Fix checking for new mail (#1485794)
| | |
| | | CHANGELOG RoundCube Webmail |
| | | =========================== |
| | | |
| | | - Fix checking for new mail: now checks unseen count of inbox (#1485794) |
| | | - Improve performance by avoiding unnecessary updates to the session table (#1486325) |
| | | - Fix invalid <font> tags which cause HTML message rendering problems (#1486521) |
| | | - Fix CVE-2010-0464: Disable DNS prefetching (#1486449) |
| | |
| | | }; |
| | | |
| | | // send periodic request to check for recent messages |
| | | this.check_for_recent = function(setbusy) |
| | | this.check_for_recent = function(refresh) |
| | | { |
| | | if (this.busy) |
| | | return; |
| | | |
| | | if (setbusy) |
| | | this.set_busy(true, 'checkingmail'); |
| | | |
| | | var addurl = '_t=' + (new Date().getTime()); |
| | | |
| | | if (refresh) { |
| | | this.set_busy(true, 'checkingmail'); |
| | | addurl += '&_refresh=1'; |
| | | } |
| | | |
| | | if (this.gui_objects.messagelist) |
| | | addurl += '&_list=1'; |
| | | if (this.gui_objects.quotadisplay) |
| | |
| | | $a_mailboxes = $IMAP->list_mailboxes(); |
| | | $check_all = (bool)$RCMAIL->config->get('check_all_folders'); |
| | | |
| | | // check if unread count of INBOX changed and refresh message list if so |
| | | if (!empty($_GET['_refresh'])) { |
| | | $unread_count = $IMAP->messagecount('INBOX', 'UNSEEN', TRUE); |
| | | if ($unread_count > $_SESSION['unseen_count']['INBOX']) { |
| | | $OUTPUT->command('set_unread_count', 'INBOX', $unread_count, true); |
| | | $OUTPUT->command('list_mailbox', 'INBOX', 1); // let the client switch to INBOX and get the message list |
| | | $OUTPUT->send(); |
| | | } |
| | | } |
| | | |
| | | // check recent/unseen counts for all mailboxes |
| | | foreach ($a_mailboxes as $mbox_name) { |
| | | if ($mbox_name == $IMAP->get_mailbox_name()) { |
| | | if ($recent_count = $IMAP->messagecount(NULL, 'RECENT', TRUE)) { |