From b595c9fcf6940ae25c1e58ef2b8d340405083906 Mon Sep 17 00:00:00 2001 From: thomascube Date: Mon, 7 Nov 2005 00:32:57 +0000 Subject: Minor bugfixes --- program/include/main.inc | 1 + program/include/rcube_imap.inc | 9 +++++++++ 2 files changed, 10 insertions(+) (limited to 'program/include') diff --git a/program/include/main.inc b/program/include/main.inc index 5895807a9..adb0b8822 100644 --- a/program/include/main.inc +++ b/program/include/main.inc @@ -573,6 +573,7 @@ function parse_template($name='main', $exit=TRUE) // replace all strings ($varname) with the content of the according global variable function parse_with_globals($input) { + $GLOBALS['__comm_path'] = $GLOBALS['COMM_PATH']; $output = preg_replace('/\$(__[a-z0-9_\-]+)/e', '$GLOBALS["\\1"]', $input); return $output; } diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc index 8253442ab..44ef24830 100644 --- a/program/include/rcube_imap.inc +++ b/program/include/rcube_imap.inc @@ -464,6 +464,7 @@ class rcube_imap // sort headers by a specific col $a_headers = iil_SortHeaders($a_msg_headers, $sort_field, $sort_order); + $headers_count = count($a_headers); // free memory unset($a_msg_headers); @@ -471,6 +472,14 @@ class rcube_imap // write headers list to cache if (!$headers_cached) $this->update_cache($mailbox.'.msg', $a_headers); + + // update message count cache + $a_mailbox_cache = $this->get_cache('messagecount'); + if (isset($a_mailbox_cache[$mailbox]['ALL']) && $a_mailbox_cache[$mailbox]['ALL'] != $headers_count) + { + $a_mailbox_cache[$mailbox]['ALL'] = (int)$headers_count; + $this->update_cache('messagecount', $a_mailbox_cache); + } if (empty($a_headers)) return array(); -- cgit v1.2.3