]> git.mxchange.org Git - friendica.git/commitdiff
Issue 3428: Autocompletion now always show user@domain.tld
authorMichael <heluecht@pirati.ca>
Fri, 5 May 2017 11:55:01 +0000 (11:55 +0000)
committerMichael <heluecht@pirati.ca>
Fri, 5 May 2017 11:55:01 +0000 (11:55 +0000)
include/acl_selectors.php
js/autocomplete.js

index f57af575afa3091124e3dff1716d6b288c6c62fe..fbe5d1e6929910fef54479bedcad7638327996ae 100644 (file)
@@ -543,7 +543,7 @@ function acl_lookup(App $a, $out_type = 'json') {
 
        if ($type == '') {
 
-               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `forum`, `prv` FROM `contact`
+               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `addr`, `forum`, `prv` FROM `contact`
                        WHERE `uid` = %d AND NOT `self` AND NOT `blocked` AND NOT `pending` AND NOT `archive` AND `notify` != ''
                        AND NOT (`network` IN ('%s', '%s'))
                        $sql_extra2
@@ -552,7 +552,7 @@ function acl_lookup(App $a, $out_type = 'json') {
                        dbesc(NETWORK_OSTATUS), dbesc(NETWORK_STATUSNET)
                );
        } elseif ($type == 'c') {
-               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `forum`, `prv` FROM `contact`
+               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `addr`, `forum`, `prv` FROM `contact`
                        WHERE `uid` = %d AND NOT `self` AND NOT `blocked` AND NOT `pending` AND NOT `archive` AND `notify` != ''
                        AND NOT (`network` IN ('%s'))
                        $sql_extra2
@@ -562,7 +562,7 @@ function acl_lookup(App $a, $out_type = 'json') {
                );
        }
        elseif ($type == 'm') {
-               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag` FROM `contact`
+               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `addr` FROM `contact`
                        WHERE `uid` = %d AND NOT `self` AND NOT `blocked` AND NOT `pending` AND NOT `archive`
                        AND `network` IN ('%s','%s','%s')
                        $sql_extra2
@@ -573,7 +573,7 @@ function acl_lookup(App $a, $out_type = 'json') {
                        dbesc(NETWORK_DIASPORA)
                );
        } elseif ($type == 'a') {
-               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `forum`, `prv` FROM `contact`
+               $r = q("SELECT `id`, `name`, `nick`, `micro`, `network`, `url`, `attag`, `addr`, `forum`, `prv` FROM `contact`
                        WHERE `uid` = %d AND `pending` = 0
                        $sql_extra2
                        ORDER BY `name` ASC ",
@@ -617,6 +617,7 @@ function acl_lookup(App $a, $out_type = 'json') {
                                'network' => $g['network'],
                                'link'    => $g['url'],
                                'nick'    => htmlentities(($g['attag']) ? $g['attag'] : $g['nick']),
+                               'addr'    => htmlentities(($g['addr']) ? $g['addr'] : $g['url']),
                                'forum'   => ((x($g, 'forum') || x($g, 'prv')) ? 1 : 0),
                        );
                }
@@ -661,6 +662,7 @@ function acl_lookup(App $a, $out_type = 'json') {
                                                'network' => $contact['network'],
                                                'link'    => $contact['url'],
                                                'nick'    => htmlentities($contact['nick'] ? : $contact['addr']),
+                                               'addr'    => htmlentities(($contact['addr']) ? $contact['addr'] : $contact['url']),
                                                'forum'   => $contact['forum']
                                        );
                                }
index 3ed9fa30f9f2b23ae3007dda2348b0c9bb963abd..58dde55a6ddd5f8057563e12b83f5cf8fc4556ee 100644 (file)
@@ -78,22 +78,26 @@ function contact_format(item) {
 }
 
 function editor_replace(item) {
-       if(typeof item.replace !== 'undefined') {
+       if (typeof item.replace !== 'undefined') {
                return '$1$2' + item.replace;
        }
 
+       if (typeof item.addr !== 'undefined') {
+               return '$1$2' + item.addr + ' ';
+       }
+
        // $2 ensures that prefix (@,@!) is preserved
        var id = item.id;
 
        // don't add the id if it is empty (the id empty eg. if there are unknow contacts in thread)
-       if(id.length < 1)
+       if (id.length < 1) {
                return '$1$2' + item.nick.replace(' ', '') + ' ';
-
+       }
        // 16 chars of hash should be enough. Full hash could be used if it can be done in a visually appealing way.
        // 16 chars is also the minimum length in the backend (otherwise it's interpreted as a local id).
-       if(id.length > 16)
+       if (id.length > 16) {
                id = item.id.substring(0,16);
-
+       }
        return '$1$2' + item.nick.replace(' ', '') + '+' + id + ' ';
 }