summaryrefslogtreecommitdiff
path: root/plugins/newmail_notifier/newmail_notifier.php
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-02-07 09:36:42 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2012-02-07 09:36:42 +0000
commiteb8a3d2f0ebd599b3b0103ce4793920035ce1cd9 (patch)
treea3e378596f3d1e13b6c34fa813568719464f6c45 /plugins/newmail_notifier/newmail_notifier.php
parentd2669456ebea1697be1c0be2e0e6d67385f03c53 (diff)
- Don;t show notofications for drafts/sent folders (#1488341)
git-svn-id: https://svn.roundcube.net/trunk@5859 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'plugins/newmail_notifier/newmail_notifier.php')
-rw-r--r--plugins/newmail_notifier/newmail_notifier.php21
1 files changed, 21 insertions, 0 deletions
diff --git a/plugins/newmail_notifier/newmail_notifier.php b/plugins/newmail_notifier/newmail_notifier.php
index 742fce83d..bd61e3692 100644
--- a/plugins/newmail_notifier/newmail_notifier.php
+++ b/plugins/newmail_notifier/newmail_notifier.php
@@ -132,10 +132,31 @@ class newmail_notifier extends rcube_plugin
*/
function notify($args)
{
+ // Already notified or non-automatic check
if ($this->notified || !empty($_GET['_refresh'])) {
return $args;
}
+ // Get folders to skip checking for
+ if (empty($this->exceptions)) {
+ $this->delimiter = $this->rc->storage->get_hierarchy_delimiter();
+ foreach (array('drafts_mbox', 'sent_mbox') as $folder) {
+ $folder = $this->rc->config->get($folder);
+ if (strlen($folder) && $folder != 'INBOX') {
+ $this->exceptions[] = $folder;
+ }
+ }
+ }
+
+ $mbox = $args['mailbox'];
+
+ // Skip exception (sent/drafts) folders (and their subfolders)
+ foreach ($this->exceptions as $folder) {
+ if (strpos($mbox.$this->delimiter, $folder.$this->delimiter) === 0) {
+ return $args;
+ }
+ }
+
$this->notified = true;
// Load configuration