]> git.mxchange.org Git - friendica.git/commitdiff
Move contact_select to Acl
authorHypolite Petovan <mrpetovan@gmail.com>
Mon, 26 Feb 2018 00:56:53 +0000 (19:56 -0500)
committerHypolite Petovan <mrpetovan@gmail.com>
Fri, 2 Mar 2018 23:40:08 +0000 (18:40 -0500)
- Simplify Acl::getMessageContactSelectHTML parameters

include/acl_selectors.php
mod/message.php
src/Core/Acl.php

index b4eed7dd4d1a55818ea8461fdcd18a7dbbdc33fd..b965c2ca64b563294310593c57a7c1a5578340b7 100644 (file)
@@ -9,10 +9,6 @@ use Friendica\Model\Contact;
 
 require_once "mod/proxy.php";
 
-function contact_select($selname, $selclass, $preselected = false, $size = 4, $privmail = false, $celeb = false, $privatenet = false, $tabindex = null) {
-       return Acl::getMessageContactSelectHTML($selname, $selclass, defaults($preselected, []), $size, $privmail, $celeb, $privatenet, $tabindex);
-}
-
 function prune_deadguys($arr) {
        Contact::pruneUnavailable($arr);
        return $arr;
index 40f1dd08c0d9cdc2d598e40c93f637dc198d103e..d2980aaea17419cb51bfed14f89f7283882ba3e6 100644 (file)
@@ -7,6 +7,7 @@ use Friendica\App;
 use Friendica\Content\Nav;
 use Friendica\Content\Smilies;
 use Friendica\Content\Text\BBCode;
+use Friendica\Core\Acl;
 use Friendica\Core\L10n;
 use Friendica\Core\System;
 use Friendica\Database\DBM;
@@ -236,14 +237,14 @@ function message_content(App $a)
                                $preid = $r[0]['id'];
                                $preselect = [$preid];
                        } else {
-                               $preselect = false;
+                               $preselect = [];
                        }
                }
 
                $prefill = $preselect ? $prename : '';
 
                // the ugly select box
-               $select = contact_select('messageto', 'message-to-select', $preselect, 4, true, false, false, 10);
+               $select = Acl::getMessageContactSelectHTML('messageto', 'message-to-select', $preselect, 4, 10);
 
                $tpl = get_markup_template('prv_message.tpl');
                $o .= replace_macros($tpl, [
index 67e2633a2e8b403db814c74acd075454813cda34..1c72d23cbef04c426e9de12fdca5072c580b80fb 100644 (file)
@@ -153,17 +153,12 @@ class Acl extends BaseObject
         *\r
         * @param string $selname     Name attribute of the select input tag\r
         * @param string $selclass    Class attribute of the select input tag\r
-        * @param array  $preselected Contact ID that should be already selected\r
+        * @param array  $preselected Contact IDs that should be already selected\r
         * @param int    $size        Length of the select box\r
-        * @param bool   $privmail\r
-        * @param bool   $celeb\r
-        * @param bool   $privatenet\r
         * @param int    $tabindex    Select input tag tabindex attribute\r
         * @return string\r
         */\r
-       public static function getMessageContactSelectHTML(\r
-       $selname, $selclass, array $preselected = [], $size = 4, $privmail = false, $celeb = false, $privatenet = false,\r
-               $tabindex = null)\r
+       public static function getMessageContactSelectHTML($selname, $selclass, array $preselected = [], $size = 4, $tabindex = null)\r
        {\r
                $a = self::getApp();\r
 \r
@@ -171,34 +166,18 @@ class Acl extends BaseObject
 \r
                // When used for private messages, we limit correspondence to mutual DFRN/Friendica friends and the selector\r
                // to one recipient. By default our selector allows multiple selects amongst all contacts.\r
-\r
-               $sql_extra = '';\r
-\r
-               if ($privmail || $celeb) {\r
-                       $sql_extra .= sprintf(" AND `rel` = %d ", intval(CONTACT_IS_FRIEND));\r
-               }\r
-\r
-               if ($privmail) {\r
-                       $sql_extra .= sprintf(" AND `network` IN ('%s' , '%s') ", NETWORK_DFRN, NETWORK_DIASPORA);\r
-               } elseif ($privatenet) {\r
-                       $sql_extra .= sprintf(" AND `network` IN ('%s' , '%s', '%s', '%s') ", NETWORK_DFRN, NETWORK_MAIL, NETWORK_FACEBOOK,\r
-                               NETWORK_DIASPORA);\r
-               }\r
+               $sql_extra = sprintf(" AND `rel` = %d ", intval(CONTACT_IS_FRIEND));\r
+               $sql_extra .= sprintf(" AND `network` IN ('%s' , '%s') ", NETWORK_DFRN, NETWORK_DIASPORA);\r
 \r
                $tabindex_attr = !empty($tabindex) ? ' tabindex="' . intval($tabindex) . '"' : '';\r
 \r
-               if ($privmail && $preselected) {\r
+               $hidepreselected = '';\r
+               if ($preselected) {\r
                        $sql_extra .= " AND `id` IN (" . implode(",", $preselected) . ")";\r
                        $hidepreselected = ' style="display: none;"';\r
-               } else {\r
-                       $hidepreselected = '';\r
                }\r
 \r
-               if ($privmail) {\r
-                       $o .= "<select name=\"$selname\" id=\"$selclass\" class=\"$selclass\" size=\"$size\"$tabindex_attr$hidepreselected>\r\n";\r
-               } else {\r
-                       $o .= "<select name=\"{$selname}[]\" id=\"$selclass\" class=\"$selclass\" multiple=\"multiple\" size=\"$size\"$tabindex_attr>\r\n";\r
-               }\r
+               $o .= "<select name=\"$selname\" id=\"$selclass\" class=\"$selclass\" size=\"$size\"$tabindex_attr$hidepreselected>\r\n";\r
 \r
                $stmt = dba::p("SELECT `id`, `name`, `url`, `network` FROM `contact`\r
                        WHERE `uid` = %d AND NOT `self` AND NOT `blocked` AND NOT `pending` AND NOT `archive` AND `notify` != ''\r
@@ -211,7 +190,6 @@ class Acl extends BaseObject
                $arr = ['contact' => $contacts, 'entry' => $o];\r
 \r
                // e.g. 'network_pre_contact_deny', 'profile_pre_contact_allow'\r
-\r
                Addon::callHooks($a->module . '_pre_' . $selname, $arr);\r
 \r
                $receiverlist = [];\r
@@ -224,11 +202,7 @@ class Acl extends BaseObject
                                        $selected = '';\r
                                }\r
 \r
-                               if ($privmail) {\r
-                                       $trimmed = Protocol::formatMention($contact['url'], $contact['name']);\r
-                               } else {\r
-                                       $trimmed = mb_substr($contact['name'], 0, 20);\r
-                               }\r
+                               $trimmed = Protocol::formatMention($contact['url'], $contact['name']);\r
 \r
                                $receiverlist[] = $trimmed;\r
 \r
@@ -238,7 +212,7 @@ class Acl extends BaseObject
 \r
                $o .= '</select>' . PHP_EOL;\r
 \r
-               if ($privmail && $preselected) {\r
+               if ($preselected) {\r
                        $o .= implode(', ', $receiverlist);\r
                }\r
 \r