X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fprofperm.php;h=077f695bea14c15be10f592258847bcd6e3d1198;hb=5f89cb09234bc79aab2be93778609b344239c3da;hp=2a1814639ac24c51442e707556680b1bc2837173;hpb=080efe4d1eaf2ceb85f230a48eac7e2e8103580b;p=friendica.git diff --git a/mod/profperm.php b/mod/profperm.php index 2a1814639a..077f695bea 100644 --- a/mod/profperm.php +++ b/mod/profperm.php @@ -6,7 +6,7 @@ function profperm_init(&$a) { return; $which = $a->user['nickname']; - $profile = $a->argv[1]; + $profile = $a->argv[1]; profile_load($a,$which,$profile); @@ -26,9 +26,19 @@ function profperm_content(&$a) { return; } + // Switch to text mod interface if we have more than 'n' contacts or group members + + $switchtotext = get_pconfig(local_user(),'system','groupedit_image_limit'); + if($switchtotext === false) + $switchtotext = get_config('system','groupedit_image_limit'); + if($switchtotext === false) + $switchtotext = 400; + + if(($a->argc > 2) && intval($a->argv[1]) && intval($a->argv[2])) { - $r = q("SELECT `id` FROM `contact` WHERE `blocked` = 0 AND `pending` = 0 AND `self` = 0 - AND `network` = 'dfrn' AND `id` = %d AND `uid` = %d LIMIT 1", + $r = q("SELECT `id` FROM `contact` WHERE `blocked` = 0 AND `pending` = 0 AND `self` = 0 + AND `network` = '%s' AND `id` = %d AND `uid` = %d LIMIT 1", + dbesc(NETWORK_DFRN), intval($a->argv[2]), intval(local_user()) ); @@ -62,13 +72,13 @@ function profperm_content(&$a) { if($change) { if(in_array($change,$ingroup)) { - q("UPDATE `contact` SET `profile-id` = 0 WHERE `id` = %d AND `uid` = %d LIMIT 1", + q("UPDATE `contact` SET `profile-id` = 0 WHERE `id` = %d AND `uid` = %d", intval($change), intval(local_user()) ); } else { - q("UPDATE `contact` SET `profile-id` = %d WHERE `id` = %d AND `uid` = %d LIMIT 1", + q("UPDATE `contact` SET `profile-id` = %d WHERE `id` = %d AND `uid` = %d", intval($a->argv[1]), intval($change), intval(local_user()) @@ -100,30 +110,40 @@ function profperm_content(&$a) { $o .= '
'; if($change) $o = ''; - - $o .= '
'; + + $o .= '
'; $o .= '

' . t('Visible To') . '

'; + $o .= '
'; + $o .= '
'; + + $textmode = (($switchtotext && (count($members) > $switchtotext)) ? true : false); + foreach($members as $member) { if($member['url']) { $member['click'] = 'profChangeMember(' . $profile['id'] . ',' . $member['id'] . '); return true;'; - $o .= micropro($member,true,'mpprof'); + $o .= micropro($member,true,'mpprof', $textmode); } } $o .= '
'; $o .= '
'; + + $o .= '
'; + $o .= '

' . t("All Contacts \x28with secure profile access\x29") . '

'; + $o .= '
'; $o .= '
'; - $o .= '

' . t("All Contacts \x28with remote profile access\x29") . '

'; - $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `blocked` = 0 and `pending` = 0 and `self` = 0 - AND `network` = 'dfrn' ORDER BY `name` ASC", - intval(local_user()) + $r = q("SELECT * FROM `contact` WHERE `uid` = %d AND `blocked` = 0 and `pending` = 0 and `self` = 0 + AND `network` = '%s' ORDER BY `name` ASC", + intval(local_user()), + dbesc(NETWORK_DFRN) ); if(count($r)) { + $textmode = (($switchtotext && (count($r) > $switchtotext)) ? true : false); foreach($r as $member) { if(! in_array($member['id'],$ingroup)) { $member['click'] = 'profChangeMember(' . $profile['id'] . ',' . $member['id'] . '); return true;'; - $o .= micropro($member,true,'mpprof'); + $o .= micropro($member,true,'mpprof',$textmode); } } }