summaryrefslogtreecommitdiff
path: root/program/js/app.js
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2010-04-07 15:53:48 +0000
committerthomascube <thomas@roundcube.net>2010-04-07 15:53:48 +0000
commit53d62616190ae4ffee1b0d6eae543fda8d85cdd9 (patch)
treee38489765870ae32138c82e5e45181fdd1f03795 /program/js/app.js
parentf4f4522b231b129178a78daf8fbaa9f5c744fd19 (diff)
Fix group expansion which was lost in r3457 + apply patch for autocompletion timeouts from #1486059
Diffstat (limited to 'program/js/app.js')
-rw-r--r--program/js/app.js18
1 files changed, 14 insertions, 4 deletions
diff --git a/program/js/app.js b/program/js/app.js
index e7f81da9e..b95cebd3d 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3238,9 +3238,11 @@ function rcube_webmail()
var insert = '';
// insert all members of a group
- if (typeof this.env.contacts[id] == 'object' && this.env.contacts[id].members) {
- for (var i=0; i < this.env.contacts[id].members.length; i++)
- insert += this.env.contacts[id].members[i] + ', ';
+ if (typeof this.env.contacts[id] == 'object' && this.env.contacts[id].id) {
+ insert += this.env.contacts[id].name + ', ';
+ this.group2expand = $.extend({}, this.env.contacts[id]);
+ this.group2expand.input = this.ksearch_input;
+ this.http_request('group-expand', '_source='+urlencode(this.env.contacts[id].source)+'&_gid='+urlencode(this.env.contacts[id].id), false);
}
else if (typeof this.env.contacts[id] == 'string')
insert = this.env.contacts[id] + ', ';
@@ -3252,6 +3254,14 @@ function rcube_webmail()
if (this.ksearch_input.setSelectionRange)
this.ksearch_input.setSelectionRange(cpos, cpos);
};
+
+ this.replace_group_recipients = function(id, recipients)
+ {
+ if (this.group2expand && this.group2expand.id == id) {
+ this.group2expand.input.value = this.group2expand.input.value.replace(this.group2expand.name, recipients);
+ this.group2expand = null;
+ }
+ };
// address search processor
this.ksearch_get_results = function()
@@ -3286,7 +3296,7 @@ function rcube_webmail()
if (old_value && old_value.length && this.env.contacts && !this.env.contacts.length && q.indexOf(old_value) == 0)
return;
- this.display_message(this.get_label('searching'), 'loading', true);
+ this.display_message(this.get_label('searching'), 'loading', false);
this.http_post('autocomplete', '_search='+urlencode(q));
};