From 11074801923807a9448f7427299ddba76e235e42 Mon Sep 17 00:00:00 2001 From: thomascube Date: Sun, 25 Nov 2007 20:40:10 +0000 Subject: Only show new messages if they match the current search (#1484176) --- program/include/rcube_imap.inc | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'program/include') diff --git a/program/include/rcube_imap.inc b/program/include/rcube_imap.inc index 5a9994c02..56859b300 100644 --- a/program/include/rcube_imap.inc +++ b/program/include/rcube_imap.inc @@ -441,7 +441,7 @@ class rcube_imap $mailbox = $this->mailbox; // count search set - if ($this->search_string && $mailbox == $this->mailbox && $mode == 'ALL') + if ($this->search_string && $mailbox == $this->mailbox && $mode == 'ALL' && !$force) return count((array)$this->search_set); $a_mailbox_cache = $this->get_cache('messagecount'); @@ -934,6 +934,20 @@ class rcube_imap return $this->get_search_set(); } + + + /** + * Check if the given message ID is part of the current search set + * + * @return True on match or if no search request is stored + */ + function in_searchset($msgid) + { + if (!empty($this->search_string)) + return in_array("$msgid", (array)$this->search_set, true); + else + return true; + } /** -- cgit v1.2.3