diff options
author | zotlabs <mike@macgirvin.com> | 2017-02-09 19:52:13 -0800 |
---|---|---|
committer | zotlabs <mike@macgirvin.com> | 2017-02-09 19:52:13 -0800 |
commit | 1fb37f93ccf4739a6f92f3f36c1ee4ec8ef66a07 (patch) | |
tree | 2fdf66b9da436e25510384a1670ae2e341f961fc /Zotlabs/Module | |
parent | fce33402e74f7ff6066ef859e7801a9201db28e1 (diff) | |
download | volse-hubzilla-1fb37f93ccf4739a6f92f3f36c1ee4ec8ef66a07.tar.gz volse-hubzilla-1fb37f93ccf4739a6f92f3f36c1ee4ec8ef66a07.tar.bz2 volse-hubzilla-1fb37f93ccf4739a6f92f3f36c1ee4ec8ef66a07.zip |
more permissions optimisations
Diffstat (limited to 'Zotlabs/Module')
-rw-r--r-- | Zotlabs/Module/Connedit.php | 19 | ||||
-rw-r--r-- | Zotlabs/Module/Settings/Channel.php | 20 |
2 files changed, 17 insertions, 22 deletions
diff --git a/Zotlabs/Module/Connedit.php b/Zotlabs/Module/Connedit.php index ccaf5cd5b..d8422266c 100644 --- a/Zotlabs/Module/Connedit.php +++ b/Zotlabs/Module/Connedit.php @@ -212,6 +212,7 @@ class Connedit extends \Zotlabs\Web\Controller { } if(($_REQUEST['pending']) && intval($orig_record[0]['abook_pending'])) { + $new_friend = true; // @fixme it won't be common, but when you accept a new connection request @@ -221,21 +222,13 @@ class Connedit extends \Zotlabs\Web\Controller { // request. The workaround is to approve the connection, then go back and // adjust permissions as desired. - $abook_my_perms = get_channel_default_perms(local_channel()); - - $role = get_pconfig(local_channel(),'system','permissions_role'); - if($role) { - $x = \Zotlabs\Access\PermissionRoles::role_perms($role); - if($x['perms_connect']) { - $abook_my_perms = $x['perms_connect']; + $p = \Zotlabs\Access\Permissions::connect_perms(local_channel()); + $my_perms = $p['perms']; + if($my_perms) { + foreach($my_perms as $k => $v) { + set_abconfig($channel['channel_id'],$orig_record[0]['abook_xchan'],'my_perms',$k,$v); } } - - $filled_perms = \Zotlabs\Access\Permissions::FilledPerms($abook_my_perms); - foreach($filled_perms as $k => $v) { - set_abconfig($channel['channel_id'],$orig_record[0]['abook_xchan'],'my_perms',$k,$v); - } - } $abook_pending = (($new_friend) ? 0 : $orig_record[0]['abook_pending']); diff --git a/Zotlabs/Module/Settings/Channel.php b/Zotlabs/Module/Settings/Channel.php index a89d83544..9ea459dab 100644 --- a/Zotlabs/Module/Settings/Channel.php +++ b/Zotlabs/Module/Settings/Channel.php @@ -88,15 +88,17 @@ class Channel { intval(local_channel()) ); } - - $x = \Zotlabs\Access\Permissions::FilledPerms($role_permissions['perms_connect']); - foreach($x as $k => $v) { - set_abconfig(local_channel(),$channel['channel_hash'],'my_perms',$k, $v); - if($role_permissions['perms_auto']) { - set_pconfig(local_channel(),'autoperms',$k,$v); - } - else { - del_pconfig(local_channel(),'autoperms',$k); + + if($role_permissions['perms_connect']) { + $x = \Zotlabs\Access\Permissions::FilledPerms($role_permissions['perms_connect']); + foreach($x as $k => $v) { + set_abconfig(local_channel(),$channel['channel_hash'],'my_perms',$k, $v); + if($role_permissions['perms_auto']) { + set_pconfig(local_channel(),'autoperms',$k,$v); + } + else { + del_pconfig(local_channel(),'autoperms',$k); + } } } |