summaryrefslogtreecommitdiff
path: root/program/steps
diff options
context:
space:
mode:
Diffstat (limited to 'program/steps')
-rw-r--r--program/steps/addressbook/func.inc14
1 files changed, 10 insertions, 4 deletions
diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index d210a3d36..1ef55fd78 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -68,12 +68,18 @@ if (!$RCMAIL->action && !$OUTPUT->ajax_call) {
if (!strlen($source) || !isset($js_list[$source]))
$source = $js_list[key($js_list)]['id'];
- // count writeable sources
+ // count all/writeable sources
$writeable = 0;
- foreach ($js_list as $s) {
+ $count = 0;
+ foreach ($js_list as $sid => $s) {
+ $count++;
if (!$s['readonly']) {
$writeable++;
}
+ // unset hidden sources
+ if ($s['hidden']) {
+ unset($js_list[$sid]);
+ }
}
$search_mods = $RCMAIL->config->get('addressbook_search_mods', $SEARCH_MODS_DEFAULT);
@@ -82,9 +88,9 @@ if (!$RCMAIL->action && !$OUTPUT->ajax_call) {
$OUTPUT->set_env('writable_source', $writeable);
$OUTPUT->set_pagetitle(rcube_label('addressbook'));
- $_SESSION['addressbooks_count'] = count($js_list);
+ $_SESSION['addressbooks_count'] = $count;
$_SESSION['addressbooks_count_writeable'] = $writeable;
-
+
if (!strlen($source))
$source = strval(key($js_list));