From 5c2692a8ea6de0a5e0ccfa0a2b9508d2d62266c6 Mon Sep 17 00:00:00 2001 From: redmatrix Date: Sun, 8 Nov 2015 16:36:36 -0800 Subject: no comment permission bug, also implement delete() in RedDirectory per Waitman --- mod/connedit.php | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'mod/connedit.php') diff --git a/mod/connedit.php b/mod/connedit.php index 877c12dc7..ad311f9a4 100644 --- a/mod/connedit.php +++ b/mod/connedit.php @@ -177,16 +177,21 @@ function connedit_post(&$a) { if(($_REQUEST['pending']) && intval($orig_record[0]['abook_pending'])) { $new_friend = true; - if(! $abook_my_perms) { - $abook_my_perms = get_channel_default_perms(local_channel()); + // @fixme it won't be common, but when you accept a new connection request + // the permissions will now be that of your permissions role and ignore + // any you may have set manually on the form. We'll probably see a bug if somebody + // tries to set the permissions *and* approve the connection in the same + // request. The workaround is to approve the connection, then go back and + // adjust permissions as desired. - $role = get_pconfig(local_channel(),'system','permissions_role'); - if($role) { - $x = get_role_perms($role); - if($x['perms_accept']) - $abook_my_perms = $x['perms_accept']; - } + $abook_my_perms = get_channel_default_perms(local_channel()); + + $role = get_pconfig(local_channel(),'system','permissions_role'); + if($role) { + $x = get_role_perms($role); + if($x['perms_accept']) + $abook_my_perms = $x['perms_accept']; } } -- cgit v1.2.3 From 11c8cabf28a23383979ceb33ec8264ae2b732f3e Mon Sep 17 00:00:00 2001 From: redmatrix Date: Sun, 8 Nov 2015 20:41:11 -0800 Subject: suppress duplicate locations in connedit, issue #111 --- mod/connedit.php | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'mod/connedit.php') diff --git a/mod/connedit.php b/mod/connedit.php index ad311f9a4..9c46fa999 100644 --- a/mod/connedit.php +++ b/mod/connedit.php @@ -666,6 +666,10 @@ function connedit_content(&$a) { if($locs) { foreach($locs as $l) { + if(!($l['location'])) + continue; + if(strpos($locstr,$l['location']) !== false) + continue; if(strlen($locstr)) $locstr .= ', '; $locstr .= $l['location']; -- cgit v1.2.3