]> git.mxchange.org Git - friendica.git/blobdiff - js/autocomplete.js
Merge pull request #2531 from rabuzarus/frio_merge
[friendica.git] / js / autocomplete.js
index 51e01c6f7e18ad0c1897868a84337168ff0b526c..8020478722413cf47937e6f88d6268cccabb62b3 100644 (file)
@@ -87,7 +87,7 @@ function editor_replace(item) {
 
        // don't add the id if it is empty (the id empty eg. if there are unknow contacts in thread)
        if(id.length < 1)
-               return '$1$2' + item.nick;
+               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).
@@ -104,6 +104,13 @@ function basic_replace(item) {
        return '$1'+item.name+' ';
 }
 
+function webbie_replace(item) {
+       if(typeof item.replace !== 'undefined')
+               return '$1'+item.replace;
+
+       return '$1'+item.nick+' ';
+}
+
 function trim_replace(item) {
        if(typeof item.replace !== 'undefined')
                return '$1'+item.replace;
@@ -163,6 +170,9 @@ function listNewLineAutocomplete(id) {
                setCaretPosition(text, caretPos + 5);
                return true;
        }
+       else {
+               return false;
+       }
 }
 
 function string2bb(element) {
@@ -213,7 +223,7 @@ function string2bb(element) {
                        match: /(^@)([^\n]{2,})$/,
                        index: 2,
                        search: function(term, callback) { contact_search(term, callback, backend_url, 'x', 'contact'); },
-                       replace: basic_replace,
+                       replace: webbie_replace,
                        template: contact_format,
                };
 
@@ -222,7 +232,7 @@ function string2bb(element) {
                        match: /(^!)([^\n]{2,})$/,
                        index: 2,
                        search: function(term, callback) { contact_search(term, callback, backend_url, 'x', 'community'); },
-                       replace: basic_replace,
+                       replace: webbie_replace,
                        template: contact_format,
                };
                this.attr('autocomplete', 'off');
@@ -286,7 +296,7 @@ function string2bb(element) {
        $.fn.bbco_autocomplete = function(type) {
 
                if(type=='bbcode') {
-                       var open_close_elements = ['bold', 'italic', 'underline', 'overline', 'strike', 'quote', 'code', 'spoiler', 'map', 'nobb', 'list', 'ul', 'ol', 'li', 'table', 'tr', 'th', 'td', 'center', 'color', 'font', 'size'];
+                       var open_close_elements = ['bold', 'italic', 'underline', 'overline', 'strike', 'quote', 'code', 'spoiler', 'map', 'img', 'url', 'audio', 'video', 'youtube', 'vimeo', 'list', 'ul', 'ol', 'li', 'table', 'tr', 'th', 'td', 'center', 'color', 'font', 'size', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'nobb', 'noparse', 'pre', 'abstract'];
                        var open_elements = ['*', 'hr'];
 
                        var elements = open_close_elements.concat(open_elements);
@@ -325,11 +335,12 @@ function string2bb(element) {
                a.on('textComplete:select', function(e, value, strategy) { value; });
 
                a.keypress(function(e){
-                       e.stopImmediatePropagation();
                        if (e.keyCode == 13) {
                                var x = listNewLineAutocomplete(this.id);
-                               if(x)
+                               if(x) {
+                                       e.stopImmediatePropagation();
                                        e.preventDefault();
+                               }
                        }
                });
        };