summaryrefslogtreecommitdiff
path: root/program/js
diff options
context:
space:
mode:
authoralecpl <alec@alec.pl>2011-09-21 16:51:41 +0000
committeralecpl <alec@alec.pl>2011-09-21 16:51:41 +0000
commit5f71297bc972a5998dc5235e92762c27923f5489 (patch)
tree792437a0dc9eec95b22dde1b597e897cdb632cd7 /program/js
parent5172ac9389edc2bb6bc567f923b02f8e9efbfbf5 (diff)
- Add notice on autocompletion that not all records were displayed
Diffstat (limited to 'program/js')
-rw-r--r--program/js/app.js38
1 files changed, 23 insertions, 15 deletions
diff --git a/program/js/app.js b/program/js/app.js
index f9233eb21..4b88958d9 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -3620,19 +3620,15 @@ function rcube_webmail()
return;
if (q.length && q.length < min) {
- if (!this.env.acinfo) {
- this.env.acinfo = this.display_message(
+ if (!this.ksearch_info) {
+ this.ksearch_info = this.display_message(
this.get_label('autocompletechars').replace('$min', min));
}
return;
}
- else if (this.env.acinfo) {
- this.hide_message(this.env.acinfo);
- }
var old_value = this.ksearch_value;
this.ksearch_value = q;
-
this.ksearch_destroy();
// ...string is empty
@@ -3730,16 +3726,20 @@ function rcube_webmail()
this.env.contacts = this.env.contacts.concat(results);
// run next parallel search
- if (maxlen > 0 && this.ksearch_data.id == reqid && this.ksearch_data.sources.length) {
- var lock, xhr, props = this.ksearch_data, source = props.sources.shift();
- if (source) {
- lock = this.display_message(this.get_label('searching'), 'loading');
- xhr = this.http_post(props.action, '_search='+urlencode(s_val)+'&_id='+reqid
- +'&_source='+urlencode(source), lock);
-
- this.ksearch_data.locks.push(lock);
- this.ksearch_data.requests.push(xhr);
+ if (this.ksearch_data.id == reqid) {
+ if (maxlen > 0 && this.ksearch_data.sources.length) {
+ var lock, xhr, props = this.ksearch_data, source = props.sources.shift();
+ if (source) {
+ lock = this.display_message(this.get_label('searching'), 'loading');
+ xhr = this.http_post(props.action, '_search='+urlencode(s_val)+'&_id='+reqid
+ +'&_source='+urlencode(source), lock);
+
+ this.ksearch_data.locks.push(lock);
+ this.ksearch_data.requests.push(xhr);
+ }
}
+ else if (!maxlen && !this.ksearch_msg)
+ this.ksearch_msg = this.display_message(this.get_label('autocompletemore'));
}
};
@@ -3783,7 +3783,15 @@ function rcube_webmail()
for (i=0, len=ac.locks.length; i<len; i++)
this.abort_request({request: ac.requests[i], lock: ac.locks[i]});
+ if (this.ksearch_info)
+ this.hide_message(this.ksearch_info);
+
+ if (this.ksearch_msg)
+ this.hide_message(this.ksearch_msg);
+
this.ksearch_data = null;
+ this.ksearch_info = null;
+ this.ksearch_msg = null;
}
/*********************************************************/