r2l by Yoav
[squirrelmail.git] / plugins / filters / options.php
index 540e3c7d78bff64d6f8689ecde64433a5c092b6b..a611d53a18d117e5047abc24721747da62741122 100644 (file)
@@ -1,27 +1,29 @@
 <?php
-   /**
-    **  Message and Spam Filter Plugin
-    **
-    **  Copyright (c) 1999-2001 The Squirrelmail Development Team
-    **  Licensed under the GNU GPL. For full terms see the file COPYING.
-    **
-    **  This plugin filters your inbox into different folders based upon given
-    **  criteria.  It is most useful for people who are subscibed to mailing lists
-    **  to help organize their messages.  The argument stands that filtering is
-    **  not the place of the client, which is why this has been made a plugin for
-    **  SquirrelMail.  You may be better off using products such as Sieve or
-    **  Procmail to do your filtering so it happens even when SquirrelMail isn't
-    **  running.
-    **
-    **  If you need help with this, or see improvements that can be made, please
-    **  email me directly at the address above.  I definately welcome suggestions
-    **  and comments.  This plugin, as is the case with all SquirrelMail plugins,
-    **  is not directly supported by the developers.  Please come to me off the
-    **  mailing list if you have trouble with it.
-    **
-    **  Also view plugins/README.plugins for more information.
-    **
-    **/
+
+/**
+ * Message and Spam Filter Plugin
+ *
+ * Copyright (c) 1999-2002 The SquirrelMail Project Team
+ * Licensed under the GNU GPL. For full terms see the file COPYING.
+ *
+ * This plugin filters your inbox into different folders based upon given
+ * criteria. It is most useful for people who are subscibed to mailing lists
+ * to help organize their messages.  The argument stands that filtering is
+ * not the place of the client, which is why this has been made a plugin for
+ * SquirrelMail.  You may be better off using products such as Sieve or
+ * Procmail to do your filtering so it happens even when SquirrelMail isn't
+ * running.
+ *
+ * If you need help with this, or see improvements that can be made, please
+ * email me directly at the address above.  I definately welcome suggestions
+ * and comments.  This plugin, as is the case with all SquirrelMail plugins,
+ * is not directly supported by the developers.  Please come to me off the
+ * mailing list if you have trouble with it.
+ *
+ * Also view plugins/README.plugins for more information.
+ *
+ * $Id$
+ */
 
    chdir ('..');
    require_once('../src/validate.php');
       $filter_what = str_replace("\\\"", "\"", $filter_what);
       $filter_what = str_replace("\"", "&quot;", $filter_what);
 
+      if (($filter_where == 'Header') && (strchr($filter_what,':') == '')) {
+         print ('WARNING! Header filters should be of the format "Header: value"<BR>');
+        $action = 'edit';
+      }
       setPref($data_dir, $username, "filter".$theid, $filter_where.",".$filter_what.",".$filter_folder);
       $filters[$theid]["where"] = $filter_where;
       $filters[$theid]["what"] = $filter_what;
       filter_swap($theid, $theid - 1);
    } elseif (isset($action) && $action == 'move_down') {
       filter_swap($theid, $theid + 1);
+   } elseif (isset($user_submit)) {
+       echo "<br><center><b>"._("Saved Scan type")."</b></center>\n";
+       setPref($data_dir, $username, 'filters_user_scan', $filters_user_scan_set);
    }
 
    $filters = load_filters();
+   $filters_user_scan = getPref($data_dir, $username, 'filters_user_scan');
+
+   echo '<br>' .
+        html_tag( 'table',
+            html_tag( 'tr',
+                html_tag( 'td',
+                    '<center><b>' . _("Options") . ' -  ' . _("Message Filtering") . '</b></center>' ,
+                'left', $color[0] )
+            ) ,
+         'center', '', 'width="95%" border="0" cellpadding="2" cellspacing="0"' ) .
+
+        '<br><form method=post action="options.php">'.
+        '<center>'.
+        html_tag( 'table', '', '', '', 'border="0" cellpadding="2" cellspacing="0"' )
+            html_tag( 'tr' ) .
+                html_tag( 'th', _("What to Scan:"), 'right', '', 'nowrap' ) .
+                html_tag( 'td', '', 'left' ) .
+            '<select name="filters_user_scan_set">'.
+            '<option value=""';
+    if ($filters_user_scan == '') {
+        echo ' selected';
+    }
+    echo '>' . _("All messages") . '</option>'.
+            '<option value="new"';
+    if ($filters_user_scan == 'new') {
+        echo ' selected';
+    }
+    echo '>' . _("Only unread messages") . '</option>' .
+            '</select>'.
+        '</td>'.
+        html_tag( 'td', '<input type=submit name="user_submit" value="' . _("Save") . '">', 'left' ) .
+        '</table>'.
+        '</center>'.
+        '</form>'.
+
+        html_tag( 'div', '[<a href="options.php?action=add">' . _("New") .
+            '</a>] - [<a href="../../src/options.php">' . _("Done") . '</a>]' ,
+        'center' ) . '<br>';
 
     if (isset($action) && ($action == 'add' || $action == 'edit')) {
         $imapConnection = sqimap_login($username, $key, $imapServerAddress, $imapPort, 0);
         if ( !isset($theid) ) {
             $theid = count($filters);
         }
-        echo '<center>'.
-            '<form action="options.php" method=post>'.
-            '<br><table cellpadding=2 cellspacing=0 border=0>'.
-            '<tr>'.
-                '<td>&nbsp;</td>'.
-                '<td>'.
+        echo html_tag( 'div', '', 'center' ) .
+             '<form action="options.php" method=post>'.
+             html_tag( 'table', '', '', '', 'border="0" cellpadding="2" cellspacing="0"' )
+             html_tag( 'tr' ) .
+                html_tag( 'td', _("Match:"), 'left' ) .
+                html_tag( 'td', '', 'left' ) .
                     '<select name=filter_where>';
 
         $L = isset($filters[$theid]['where']);
         $sel = (($L && $filters[$theid]['where'] == 'Subject')?'selected':'');
         echo "<option value=\"Subject\" $sel>" . _ ("Subject") . '</option>';
 
+        $sel = (($L && $filters[$theid]['where'] == 'Header')?'selected':'');
+        echo "<option value=\"Header\" $sel>" . _ ("Header") . '</option>';
+
         echo         '</select>'.
                 '</td>'.
             '</tr>'.
-            '<tr>'.
-                '<td align=right>'.
-                    _("Contains:").
-                '</td>'.
-                '<td>'.
+            html_tag( 'tr' ) .
+                html_tag( 'td', _("Contains:"), 'right' ) .
+                html_tag( 'td', '', 'left' ) .
                     '<input type=text size=32 name=filter_what value="';
         if (isset($filters[$theid]['what'])) {
             echo $filters[$theid]["what"];
         echo '">'.
                 '</td>'.
             '</tr>'.
-            '<tr>'.
-                '<td>'.
-                    _("Move to:").
-                '</td>'.
-                '<td>'.
+            html_tag( 'tr' ) .
+                html_tag( 'td', _("Move to:"), 'left' ) .
+                html_tag( 'td', '', 'left' ) .
                     '<tt>'.
                     '<select name=filter_folder>';
 
             '<input type=submit name=filter_submit value=' . _("Submit") . '>'.
             "<input type=hidden name=theid value=$theid>".
             '</form>'.
-            '</center>';
+            '</div>';
 
     }
 
-   echo '<br>' .
-        '<table width=95% align=center border=0 cellpadding=2 cellspacing=0>'.
-        "<tr><td bgcolor=\"$color[0]\">".
-        '<center><b>' . _("Options") . ' -  ' . _("Message Filtering") . '</b></center>'.
-        '</td></tr></table>'.
-        '<br><center>[<a href="options.php?action=add">' . _("New") .
-        '</a>] - [<a href="../../src/options.php">' . _("Done") . '</a>]</center><br>' .
-        '<table border=0 cellpadding=3 cellspacing=0 align=center>';
+       echo html_tag( 'table', '', 'center', '', 'border="0" cellpadding="3" cellspacing="0"' )
 
     for ($i=0; $i < count($filters); $i++) {
 
         $clr = (($i % 2)?$color[0]:$color[9]);
         $fdr = ($folder_prefix)?str_replace($folder_prefix, "", $filters[$i]["folder"]):$filters[$i]["folder"];
         echo "<tr bgcolor=\"$clr\"><td><small>".
-            "[<a href=\"options.php?theid=$i&action=edit\">" . _("Edit") . '</a>]'.
-            '</small></td><td><small>'.
-            "[<a href=\"options.php?theid=$i&action=delete\">" . _("Delete") . '</a>]'.
-            '</small></td><td align=center><small>[';
+        echo html_tag( 'tr', '', $clr ) .
+                   html_tag( 'td',
+                       '<small>' .
+                       "[<a href=\"options.php?theid=$i&action=edit\">" . _("Edit") . '</a>]'.
+                       '</small>' ,
+                   'left' ) .
+                   html_tag( 'td',
+                       '<small>' .
+                       "[<a href=\"options.php?theid=$i&action=delete\">" . _("Delete") . '</a>]'.
+                       '</small>' ,
+                   'left' ) .
+                   html_tag( 'td', '', 'center' ) . '<small>[';
 
         if (isset($filters[$i + 1])) {
             echo "<a href=\"options.php?theid=$i&action=move_down\">" . _("Down") . '</a>';
             if ($i > 0) {
-                echo ' | ';
+                echo '&nbsp;|&nbsp;';
             }
         }
         if ($i > 0) {
             echo "<a href=\"options.php?theid=$i&action=move_up\">" . _("Up") . '</a>';
         }
-        echo ']</small></td><td> - ';
+        echo ']</small></td>'.
+            html_tag( 'td', '-', 'left' ) .
+            html_tag( 'td', '', 'left' );
         printf( _("If <b>%s</b> contains <b>%s</b> then move to <b>%s</b>"), _($filters[$i]['where']), $filters[$i]['what'], $fdr );
         echo '</td></tr>';
 
     }
     echo '</table>'.
-        '<table width=80% align=center border=0 cellpadding=2 cellspacing=0">'.
-            '<tr><td>&nbsp</td></tr>'.
-        '</table>';
-
+        html_tag( 'table',
+            html_tag( 'tr',
+                html_tag( 'td', '&nbsp', 'left' )
+            ) ,
+        'center', '', 'width="80%" border="0" cellpadding="2" cellspacing="0"' );
 ?>