]> git.mxchange.org Git - friendica.git/blobdiff - view/js/autocomplete.js
RU translations THX Alexander An
[friendica.git] / view / js / autocomplete.js
index 18deaa1d3052717a8ca027f5889dc7373327d906..a3464e459714acc75ecfe9d7e4631db5227d553d 100644 (file)
@@ -1,6 +1,6 @@
 // @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt Expat
 /**
- * @brief Friendica people autocomplete
+ * Friendica people autocomplete
  *
  * require jQuery, jquery.textcomplete
  *
@@ -222,7 +222,7 @@ function string2bb(element) {
                        match: /(^|\s)(\#)([^ \n]{2,})$/,
                        index: 3,
                        search: function(term, callback) {
-                               $.getJSON(baseurl + '/hashtag/' + '?f=&t=' + term)
+                               $.getJSON(baseurl + '/hashtag/' + '?t=' + term)
                                .done(function(data) {
                                        callback($.map(data, function(entry) {
                                                // .toLowerCase() enables case-insensitive search
@@ -275,7 +275,7 @@ function string2bb(element) {
                tags = {
                        match: /(^|\s)(\#)([^ \n]{2,})$/,
                        index: 3,
-                       search: function(term, callback) { $.getJSON(baseurl + '/hashtag/' + '?f=&t=' + term).done(function(data) { callback($.map(data, function(entry) { return entry.text.indexOf(term) === 0 ? entry : null; })); }); },
+                       search: function(term, callback) { $.getJSON(baseurl + '/hashtag/' + '?t=' + term).done(function(data) { callback($.map(data, function(entry) { return entry.text.indexOf(term) === 0 ? entry : null; })); }); },
                        replace: function(item) { return "$1$2" + item.text; },
                        template: tag_format
                };
@@ -286,6 +286,31 @@ function string2bb(element) {
        };
 })( jQuery );
 
+(function( $ ) {
+       $.fn.name_autocomplete = function(backend_url, typ, autosubmit, onselect) {
+               if(typeof typ === 'undefined') typ = '';
+               if(typeof autosubmit === 'undefined') autosubmit = false;
+
+               // Autocomplete contacts
+               names = {
+                       match: /(^)([^\n]+)$/,
+                       index: 2,
+                       search: function(term, callback) { contact_search(term, callback, backend_url, typ); },
+                       replace: trim_replace,
+                       template: contact_format,
+               };
+
+               this.attr('autocomplete','off');
+               var a = this.textcomplete([names], {className:'acpopup', zIndex:10000});
+
+               if(autosubmit)
+                       a.on('textComplete:select', function(e,value,strategy) { submit_form(this); });
+
+               if(typeof onselect !== 'undefined')
+                       a.on('textComplete:select', function(e, value, strategy) { onselect(value); });
+       };
+})( jQuery );
+
 (function( $ ) {
        $.fn.bbco_autocomplete = function(type) {