summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--program/js/app.js8
-rw-r--r--program/steps/addressbook/func.inc8
-rw-r--r--program/steps/addressbook/search.inc3
3 files changed, 7 insertions, 12 deletions
diff --git a/program/js/app.js b/program/js/app.js
index c81c511a9..88297e91d 100644
--- a/program/js/app.js
+++ b/program/js/app.js
@@ -304,15 +304,12 @@ function rcube_webmail()
if (this.gui_objects.qsearchbox) {
$(this.gui_objects.qsearchbox).focusin(function() { rcmail.contact_list.blur(); });
}
- }
-
- this.set_page_buttons();
- if (this.env.address_sources && this.env.address_sources[this.env.source] && !this.env.address_sources[this.env.source].readonly) {
- this.enable_command('add', 'import', true);
this.enable_command('group-create', this.env.address_sources[this.env.source].groups);
}
+ this.set_page_buttons();
+
if (this.env.cid) {
this.enable_command('show', 'edit', true);
// register handlers for group assignment via checkboxes
@@ -339,6 +336,7 @@ function rcube_webmail()
if (this.contact_list && this.contact_list.rowcount > 0)
this.enable_command('export', true);
+ this.enable_command('add', 'import', !this.env.readonly);
this.enable_command('list', 'listgroup', 'advanced-search', true);
break;
diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index 62fde971c..8b7e641d8 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -50,14 +50,10 @@ else
if (!empty($_REQUEST['_gid']))
$CONTACTS->set_group(get_input_value('_gid', RCUBE_INPUT_GPC));
-/*
-// set message set for search result
-if (!empty($_REQUEST['_search']) && isset($_SESSION['search'][$_REQUEST['_search']]))
- $CONTACTS->set_search_set($_SESSION['search'][$_REQUEST['_search']]);
-*/
+
// set data source env
$OUTPUT->set_env('source', $source ? $source : '0');
-$OUTPUT->set_env('readonly', $CONTACTS->readonly, false);
+$OUTPUT->set_env('readonly', $CONTACTS->readonly);
if (!$OUTPUT->ajax_call) {
$search_mods = $RCMAIL->config->get('addressbook_search_mods', $SEARCH_MODS_DEFAULT);
$OUTPUT->set_env('search_mods', $search_mods);
diff --git a/program/steps/addressbook/search.inc b/program/steps/addressbook/search.inc
index fff6bd66c..498e9b222 100644
--- a/program/steps/addressbook/search.inc
+++ b/program/steps/addressbook/search.inc
@@ -72,7 +72,8 @@ function rcmail_contact_search()
}
// search request ID
- $search_request = md5('addr'.implode($fields, ',')
+ $search_request = md5('addr'
+ .(is_array($fields) ? implode($fields, ',') : $fields)
.(is_array($search) ? implode($search, ',') : $search));
// reset page