From 3253b296c21c54df228de39ff3e4775974df81d5 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Fri, 20 May 2011 05:17:27 -0400
Subject: [PATCH] - Clear properly mailboxes cache on folder subscription change

---
 program/include/rcube_imap.php |   15 ++-------------
 1 files changed, 2 insertions(+), 13 deletions(-)

diff --git a/program/include/rcube_imap.php b/program/include/rcube_imap.php
index 882834e..7e97b3c 100644
--- a/program/include/rcube_imap.php
+++ b/program/include/rcube_imap.php
@@ -4583,20 +4583,9 @@
                     $updated = $this->conn->unsubscribe($mailbox);
             }
 
-        // get cached mailbox list
+        // clear cached mailbox list(s)
         if ($updated) {
-            $a_mailbox_cache = $this->get_cache('mailboxes');
-            if (!is_array($a_mailbox_cache))
-                return $updated;
-
-            // modify cached list
-            if ($mode == 'subscribe')
-                $a_mailbox_cache = array_merge($a_mailbox_cache, $a_mboxes);
-            else if ($mode == 'unsubscribe')
-                $a_mailbox_cache = array_diff($a_mailbox_cache, $a_mboxes);
-
-            // write mailboxlist to cache
-            $this->update_cache('mailboxes', $this->_sort_mailbox_list($a_mailbox_cache));
+            $this->clear_cache('/^mailboxes.*/', true);
         }
 
         return $updated;

--
Gitblit v1.9.1