If no filters defined, and spam filters are not enabled, don't bother
authorjangliss <jangliss@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Tue, 25 Oct 2005 21:08:21 +0000 (21:08 +0000)
committerjangliss <jangliss@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Tue, 25 Oct 2005 21:08:21 +0000 (21:08 +0000)
issuing a possibly costly IMAP STATUS call to INBOX.

git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@10199 7612ce4b-ef26-0410-bec9-ea0150e637f0

ChangeLog
plugins/filters/filters.php

index 57630f8d226a490a5d44ec642fbc8b9c0dc7f56d..49bf87c0d35bc19edfc88c03be7de17319f6b08c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -458,6 +458,8 @@ Version 1.5.1 -- CVS
     IE6 browsers.
   - Rare case of session being destroyed causing PHP errors, so ensure session
     is restarted.
+  - If you don't have any filters defined, and spam filters are disabled, no
+    point issuing a STATUS call on INBOX for the filters plugin.
 
 Version 1.5.0 - 2 February 2004
 -------------------------------
index aa9f8b3ce141b68acdfe46598aeb4b4c2af7c9ad..0882e4fe873e840b1e863dd08eb3a6a05cb9a489 100644 (file)
@@ -192,6 +192,26 @@ function start_filters() {
     sqgetGlobalVar('username', $username, SQ_SESSION);
     sqgetGlobalVar('key',      $key,      SQ_COOKIE);
 
+    $filters = load_filters();
+
+    // No point running spam filters if there aren't any to run //
+    if ($AllowSpamFilters) {
+        $spamfilters = load_spam_filters();
+
+        $AllowSpamFilters = false;
+        foreach($spamfilters as $key=>$value) {
+            if ($value['enabled'] == 'yes') {
+                $AllowSpamFilters = true;
+                break;
+            }
+        }
+    }
+
+    if (!$AllowSpamFilters && empty($filters)) {
+        return;
+    }
+
+
     // Detect if we have already connected to IMAP or not.
     // Also check if we are forced to use a separate IMAP connection
     if ((!isset($imap_stream) && !isset($imapConnection)) ||
@@ -883,4 +903,4 @@ function do_error($string) {
     echo "</font></p>\n";
 }
 
-?>
\ No newline at end of file
+?>