summaryrefslogtreecommitdiff
path: root/program/include
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2005-11-07 00:32:57 +0000
committerthomascube <thomas@roundcube.net>2005-11-07 00:32:57 +0000
commitb595c9fcf6940ae25c1e58ef2b8d340405083906 (patch)
tree35482440626ab52a2517312ffaadede0360fc250 /program/include
parente447cb072f025f1b0af9fea091a316e11163119d (diff)
Minor bugfixes
Diffstat (limited to 'program/include')
-rw-r--r--program/include/main.inc1
-rw-r--r--program/include/rcube_imap.inc9
2 files changed, 10 insertions, 0 deletions
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();