From 5c9d1ffe8eb4d53c378720e745e54f2a4bdecb28 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Tue, 16 Aug 2011 09:41:52 -0400
Subject: [PATCH] - Add option to hide selected LDAP addressbook on the list

---
 program/steps/addressbook/func.inc |   14 ++++++++++----
 1 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/program/steps/addressbook/func.inc b/program/steps/addressbook/func.inc
index d210a3d..1ef55fd 100644
--- a/program/steps/addressbook/func.inc
+++ b/program/steps/addressbook/func.inc
@@ -68,11 +68,17 @@
     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]);
         }
     }
 
@@ -82,9 +88,9 @@
     $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));
 

--
Gitblit v1.9.1