aboutsummaryrefslogtreecommitdiffstats
path: root/view
diff options
context:
space:
mode:
Diffstat (limited to 'view')
-rw-r--r--view/js/autocomplete.js26
-rw-r--r--view/js/mod_poke.js13
2 files changed, 25 insertions, 14 deletions
diff --git a/view/js/autocomplete.js b/view/js/autocomplete.js
index 1fad1903b..8966c675d 100644
--- a/view/js/autocomplete.js
+++ b/view/js/autocomplete.js
@@ -40,7 +40,7 @@ function editor_replace(item) {
}
function basic_replace(item) {
- return '$1$2'+item.nick;
+ return '$1'+item.name+' ';
}
/**
@@ -78,8 +78,8 @@ function basic_replace(item) {
// Autocomplete contacts
contacts = {
- match: /(^)(@)([^\n]+)$/,
- index: 3,
+ match: /(^@)([^\n]+)$/,
+ index: 2,
search: function(term, callback) { contact_search(term, callback, backend_url, 'x',[]); },
replace: basic_replace,
template: contact_format,
@@ -87,3 +87,23 @@ function basic_replace(item) {
this.textcomplete([contacts],{className:'acpopup'});
};
})( jQuery );
+
+(function( $ ){
+ $.fn.contact_autocomplete = function(backend_url, onselect) {
+
+ // Autocomplete contacts
+ contacts = {
+ match: /(^)([^\n]+)$/,
+ index: 2,
+ search: function(term, callback) { contact_search(term, callback, backend_url, '',[]); },
+ replace: basic_replace,
+ template: contact_format,
+ }
+
+ var a = this.textcomplete([contacts],{className:'acpopup'});
+
+ if(typeof onselect !== 'undefined')
+ a.on('textComplete:select',function(e,value,strategy) { onselect(value); });
+ };
+})( jQuery );
+
diff --git a/view/js/mod_poke.js b/view/js/mod_poke.js
index 78972888f..c5ca5399c 100644
--- a/view/js/mod_poke.js
+++ b/view/js/mod_poke.js
@@ -1,14 +1,5 @@
$(document).ready(function() {
- var a;
- a = $("#poke-recip").autocomplete({
- serviceUrl: baseurl + '/acl',
- minChars: 2,
- width: 250,
- id: 'poke-recip-ac',
- onSelect: function(value,data) {
- $("#poke-recip-complete").val(data);
- }
+ $("#poke-recip").contact_autocomplete(baseurl + '/acl', function(data) {
+ $("#poke-recip-complete").val(data.id);
});
- a.setOptions({ params: { type: 'a' }});
-
});