diff options
author | Haakon Meland Eriksen <haakon.eriksen@far.no> | 2016-01-14 18:14:30 +0100 |
---|---|---|
committer | Haakon Meland Eriksen <haakon.eriksen@far.no> | 2016-01-14 18:14:30 +0100 |
commit | 72353bf0446901f1711cba7a2e50dbce9bd06227 (patch) | |
tree | 6b73f79bf7386e69e4941ff5a8b4c165830b1652 /include/identity.php | |
parent | 42433c0b4442f1a6b451324fe7f765b1b4c354b8 (diff) | |
parent | 9f9fdc1434b7283171f8d843f225228cdb322115 (diff) | |
download | volse-hubzilla-72353bf0446901f1711cba7a2e50dbce9bd06227.tar.gz volse-hubzilla-72353bf0446901f1711cba7a2e50dbce9bd06227.tar.bz2 volse-hubzilla-72353bf0446901f1711cba7a2e50dbce9bd06227.zip |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'include/identity.php')
-rw-r--r-- | include/identity.php | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/include/identity.php b/include/identity.php index cfedd243a..1d908056f 100644 --- a/include/identity.php +++ b/include/identity.php @@ -1695,3 +1695,45 @@ function profiles_build_sync($channel_id) { build_sync_packet($channel_id,array('profile' => $r)); } } + + +function auto_channel_create($account_id) { + + if(! $account_id) + return false; + + $arr = array(); + $arr['account_id'] = $account_id; + $arr['name'] = get_aconfig($account_id,'register','channel_name'); + $arr['nickname'] = legal_webbie(get_aconfig($account_id,'register','channel_address')); + $arr['permissions_role'] = get_aconfig($account_id,'register','permissions_role'); + + del_aconfig($account_id,'register','channel_name'); + del_aconfig($account_id,'register','channel_address'); + del_aconfig($account_id,'register','permissions_role'); + + if((! $arr['name']) || (! $arr['nickname'])) { + $x = q("select * from account where account_id = %d limit 1", + intval($account_id) + ); + if($x) { + if(! $arr['name']) + $arr['name'] = substr($x[0]['account_email'],0,strpos($x[0]['account_email'],'@')); + if(! $arr['nickname']) + $arr['nickname'] = legal_webbie(substr($x[0]['account_email'],0,strpos($x[0]['account_email'],'@'))); + } + } + if(! $arr['permissions_role']) + $arr['permissions_role'] = 'social'; + + if(validate_channelname($arr['name'])) + return false; + if($arr['nickname'] === 'sys') + $arr['nickname'] = $arr['nickname'] . mt_rand(1000,9999); + + $arr['nickname'] = check_webbie(array($arr['nickname'], $arr['nickname'] . mt_rand(1000,9999))); + + return create_identity($arr); + +} + |