From aceb0149b8f7f6c57e8dd6ba6f69aa0d6cacc6bc Mon Sep 17 00:00:00 2001 From: Aleksander Machniak Date: Mon, 7 Oct 2013 09:26:37 +0200 Subject: Add possibility to programmatically set cache mode, so it is possible to cache only indexes/threads but not messages --- program/lib/Roundcube/rcube_imap.php | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'program/lib/Roundcube/rcube_imap.php') diff --git a/program/lib/Roundcube/rcube_imap.php b/program/lib/Roundcube/rcube_imap.php index aa074233f..9faf1bbc6 100644 --- a/program/lib/Roundcube/rcube_imap.php +++ b/program/lib/Roundcube/rcube_imap.php @@ -3760,12 +3760,17 @@ class rcube_imap extends rcube_storage /** * Enable or disable messages caching * - * @param boolean $set Flag + * @param boolean $set Flag + * @param int $mode Cache mode */ - public function set_messages_caching($set) + public function set_messages_caching($set, $mode = null) { if ($set) { $this->messages_caching = true; + + if ($mode && ($cache = $this->get_mcache_engine())) { + $cache->set_mode($mode); + } } else { if ($this->mcache) { @@ -3800,7 +3805,7 @@ class rcube_imap extends rcube_storage * Clears the messages cache. * * @param string $folder Folder name - * @param array $uids Optional message UIDs to remove from cache + * @param array $uids Optional message UIDs to remove from cache */ protected function clear_message_cache($folder = null, $uids = null) { -- cgit v1.2.3