Add ability to filter on the Message body, or if text appears any where in the messag...
[squirrelmail.git] / plugins / filters / filters.php
index 9aca1be2c71803fa903a3d741699e776be4fa72b..98935f3b6861835df65f3f6565ac2554a1ce5032 100644 (file)
@@ -240,6 +240,12 @@ function user_filters($imap_stream) {
                   $filters[$i]['what'], $filters[$i]['folder'], $filters_user_scan, $expunge);
             $expunge = filter_search_and_delete($imap_stream, 'CC',
                   $filters[$i]['what'], $filters[$i]['folder'], $filters_user_scan, $expunge);
+        } else if ($filters[$i]['where'] == 'Header and Body') {
+            $expunge = filter_search_and_delete($imap_stream, 'TEXT',
+                  $filters[$i]['what'], $filters[$i]['folder'], $filters_user_scan, $expunge);
+        } else if ($filters[$i]['where'] == 'Message Body') {
+            $expunge = filter_search_and_delete($imap_stream, 'BODY',
+                  $filters[$i]['what'], $filters[$i]['folder'], $filters_user_scan, $expunge);                  
         } else {
             /*
             *  If it's a normal TO, CC, SUBJECT, or FROM, then handle it
@@ -279,6 +285,7 @@ function filter_search_and_delete($imap_stream, $where, $what, $where_to, $user_
     } else {
         $category = 'ALL';
     }
+    $category .= ' NOT DELETED';
 
     if ($allow_charset_search &&
         isset($languages[$squirrelmail_language]['CHARSET']) &&