From db1a87cd6c506f2afbd1a37c64cb56ae11120b49 Mon Sep 17 00:00:00 2001 From: thomascube <thomas@roundcube.net> Date: Fri, 17 Dec 2010 10:07:04 -0500 Subject: [PATCH] Update branch for 0.5-rc release --- program/steps/mail/getunread.inc | 15 +++++++++------ 1 files changed, 9 insertions(+), 6 deletions(-) diff --git a/program/steps/mail/getunread.inc b/program/steps/mail/getunread.inc index a035f52..e60f36c 100644 --- a/program/steps/mail/getunread.inc +++ b/program/steps/mail/getunread.inc @@ -28,15 +28,18 @@ $check_all = (bool)$RCMAIL->config->get('check_all_folders'); foreach ($a_folders as $mbox_row) { - if (!$check_all && isset($_SESSION['unseen_count'][$mbox_row]) && $mbox_row != $current) - $unseen = $_SESSION['unseen_count'][$mbox_row]; - else - $unseen = $IMAP->messagecount($mbox_row, 'UNSEEN', !isset($_SESSION['unseen_count'][$mbox_row])); + $unseen_old = rcmail_get_unseen_count($mbox_row); - if ($unseen || !isset($_SESSION['unseen_count'][$mbox_row])) { + if (!$check_all && $unseen_old !== null && $mbox_row != $current) + $unseen = $unseen_old; + else + $unseen = $IMAP->messagecount($mbox_row, 'UNSEEN', $unseen_old === null); + + if ($unseen || $unseen_old === null) { $OUTPUT->command('set_unread_count', $mbox_row, $unseen, $inbox && $mbox_row == 'INBOX'); } - $_SESSION['unseen_count'][$mbox_row] = $unseen; + + rcmail_set_unseen_count($mbox_row, $unseen); } } -- Gitblit v1.9.1