X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=src%2Foptions_highlight.php;h=872a5cdc9524453689e2f5fc20d76dd4ade344ae;hp=93d872ca2f0852b1fcfc9ad23a4ec9c193db15cc;hb=d3ab62601e195e75cfa8f871a89a380be5ed443e;hpb=8f6f9ba5df6491d396aa690dcf3e5b9070a565ca
diff --git a/src/options_highlight.php b/src/options_highlight.php
index 93d872ca..872a5cdc 100644
--- a/src/options_highlight.php
+++ b/src/options_highlight.php
@@ -3,58 +3,42 @@
/**
* options_highlight.php
*
- * Copyright (c) 1999-2003 The SquirrelMail Project Team
- * Licensed under the GNU GPL. For full terms see the file COPYING.
- *
* Displays message highlighting options
*
- * $Id$
+ * @copyright © 1999-2007 The SquirrelMail Project Team
+ * @license http://opensource.org/licenses/gpl-license.php GNU Public License
+ * @version $Id$
* @package squirrelmail
+ * @subpackage prefs
*/
-/** Path for SquirrelMail required files. */
-define('SM_PATH','../');
+/** This is the options_highlight page */
+define('PAGE_NAME', 'options_highlight');
+
+/**
+ * Include the SquirrelMail initialization file.
+ */
+require('../include/init.php');
-/* SquirrelMail required files. */
-require_once(SM_PATH . 'include/validate.php');
-require_once(SM_PATH . 'functions/display_messages.php');
-require_once(SM_PATH . 'functions/imap.php');
-require_once(SM_PATH . 'functions/plugin.php');
-require_once(SM_PATH . 'functions/strings.php');
-require_once(SM_PATH . 'functions/html.php');
+// include_once(SM_PATH . 'functions/imap.php');
+require_once(SM_PATH . 'functions/forms.php');
/* get globals */
-if (isset($_GET['action'])) {
- $action = $_GET['action'];
-}
-if (isset($_GET['theid'])) {
- $theid = $_GET['theid'];
-}
-if (isset($_GET['identname'])) {
- $identname = $_GET['identname'];
-}
-if (isset($_GET['newcolor_choose'])) {
- $newcolor_choose = $_GET['newcolor_choose'];
-}
-if (isset($_GET['newcolor_input'])) {
- $newcolor_input = $_GET['newcolor_input'];
-}
-if (isset($_GET['color_type'])) {
- $color_type = $_GET['color_type'];
-}
-if (isset($_GET['match_type'])) {
- $match_type = $_GET['match_type'];
-}
-if (isset($_GET['value'])) {
- $value = $_GET['value'];
-}
+sqGetGlobalVar('action', $action);
+sqGetGlobalVar('theid', $theid);
+sqGetGlobalVar('identname', $identname);
+sqGetGlobalVar('newcolor_choose', $newcolor_choose);
+sqGetGlobalVar('newcolor_input', $newcolor_input);
+sqGetGlobalVar('color_type', $color_type);
+sqGetGlobalVar('match_type', $match_type);
+sqGetGlobalVar('value', $value);
/* end of get globals */
-
+
function oh_opt( $val, $sel, $tit ) {
echo "\n";
}
@@ -94,7 +78,7 @@ if (isset($theid) && ($action == 'delete') ||
$new_rules = $message_highlight_list;
break;
}
- $message_highlight_list = $new_rules;
+ $message_highlight_list = $new_rules;
setPref($data_dir, $username, 'hililist', serialize($message_highlight_list));
@@ -112,85 +96,64 @@ if (isset($theid) && ($action == 'delete') ||
$value = str_replace(',', ' ', $value);
if(isset($theid)) {
- $message_highlight_list[$theid] =
+ $message_highlight_list[$theid] =
array( 'name' => $identname, 'color' => $newcolor,
'value' => $value, 'match_type' => $match_type );
} else {
- $message_highlight_list[] =
+ $message_highlight_list[] =
array( 'name' => $identname, 'color' => $newcolor,
'value' => $value, 'match_type' => $match_type );
}
setPref($data_dir, $username, 'hililist', serialize($message_highlight_list));
}
-displayPageHeader($color, 'None');
-
-echo
-html_tag( 'table', "\n" .
- html_tag( 'tr', "\n" .
- html_tag( 'td', '
' . _("Options") . ' - ' . _("Message Highlighting") . '', 'left')
- ),
- 'center', $color[9], 'width="95%" border="0" cellpadding="1" cellspacing="0"' ) . "
\n" .
-html_tag( 'table', '', '', '', 'width="100%" border="0" cellpadding="1" cellspacing="0"' ) .
- html_tag( 'tr' ) . "\n" .
- html_tag( 'td', '', 'left' );
-
-echo '[' . _("New") . ']'.
- ' - ['._("Done").']
'."\n";
-$mhl_count = count($message_highlight_list);
-if ($mhl_count > 0) {
- echo html_tag( 'table', '', 'center', '', 'width="80%" border="0" cellpadding="3" cellspacing="0"' ) . "\n";
- for ($i=0; $i < $mhl_count; $i++) {
- $match_type = '';
- switch ($message_highlight_list[$i]['match_type'] ) {
+displayPageHeader($color);
+
+/**
+ * Display the current rule list
+ */
+$rules = array();
+foreach($message_highlight_list as $index=>$rule) {
+ $a = array();
+
+ $a['Name'] = htmlspecialchars($rule['name']);
+ $a['Color'] = $rule['color'];
+ $a['MatchField'] = '';
+ $a['MatchValue'] = htmlspecialchars($rule['value']);
+ switch ($rule['match_type']) {
case 'from' :
- $match_type = _("From");
- break;
+ $a['MatchField'] = _("From");
+ break;
case 'to' :
- $match_type = _("To");
- break;
+ $a['MatchField'] = _("To");
+ break;
case 'cc' :
- $match_type = _("Cc");
- break;
+ $a['MatchField'] = _("Cc");
+ break;
case 'to_cc' :
- $match_type = _("To or Cc");
- break;
+ $a['MatchField'] = _("To or Cc");
+ break;
case 'subject' :
- $match_type = _("subject");
- break;
- }
-
- $links = '[' .
- _("Edit") .
- '] [' .
- _("Delete");
- if($i > 0) {
- $links .= '] [' . _("Up");
- }
- if($i+1 < $mhl_count) {
- $links .= '] [' . _("Down");
- }
- $links .= ']';
-
- echo html_tag( 'tr',
- html_tag( 'td',
- $links,
- 'left', $color[4], 'width="20%" nowrap' ) .
- html_tag( 'td',
- htmlspecialchars($message_highlight_list[$i]['name']) ,
- 'left' ) .
- html_tag( 'td',
- $match_type . ' = ' .
- htmlspecialchars($message_highlight_list[$i]['value']) ,
- 'left' ) ,
- '', $message_highlight_list[$i]['color'] ) . "\n";
+ $a['MatchField'] = _("subject");
+ break;
}
- echo "\n".
- "
\n";
-} else {
- echo '' . _("No highlighting is defined") . "
\n".
- "
\n";
+
+ $rules[$index] = $a;
}
+
+$oTemplate->assign('current_rules', $rules);
+
+$oTemplate->assign('add_rule', 'options_highlight.php?action=add');
+$oTemplate->assign('edit_rule', 'options_highlight.php?action=edit&theid=');
+$oTemplate->assign('delete_rule', 'options_highlight.php?action=delete&theid=');
+$oTemplate->assign('move_up', 'options_highlight.php?action=up&theid=');
+$oTemplate->assign('move_down', 'options_highlight.php?action=down&theid=');
+
+$oTemplate->display('options_highlight_list.tpl');
+
+/**
+ * Optionally, display the add/edit dialog
+ */
if ($action == 'edit' || $action == 'add') {
$color_list[0] = '4444aa';
@@ -329,143 +292,60 @@ if ($action == 'edit' || $action == 'add') {
$new_color_list["18,3"] = 'ff33ff';
$new_color_list["18,4"] = 'ff00ff';
- $selected_input = '';
- $selected_choose = '';
+ $selected_input = FALSE;
+ $selected_choose = FALSE;
+ $selected_predefined = FALSE;
- for ($i=0; $i < 14; $i++) {
- ${"selected".$i} = '';
- }
+ $name = $action=='edit' && isset($theid) && isset($message_highlight_list[$theid]['name']) ? $message_highlight_list[$theid]['name'] : '';
+ $field = $action=='edit' && isset($theid) && isset($message_highlight_list[$theid]['match_type']) ? $message_highlight_list[$theid]['match_type'] : '';
+ $value = $action=='edit' && isset($theid) && isset($message_highlight_list[$theid]['value']) ? $message_highlight_list[$theid]['value'] : '';
+ $color = $action=='edit' && isset($theid) && isset($message_highlight_list[$theid]['color']) ? $message_highlight_list[$theid]['color'] : '';
+
if ($action == 'edit' && isset($theid) && isset($message_highlight_list[$theid]['color'])) {
for ($i=0; $i < 14; $i++) {
if ($color_list[$i] == $message_highlight_list[$theid]['color']) {
- $selected_choose = ' checked';
- ${"selected".$i} = ' selected';
+ $selected_choose = TRUE;
continue;
}
}
}
- if ($action == 'edit' && isset($theid) && isset($message_highlight_list[$theid]['color'])) {
- $current_color = $message_highlight_list[$theid]['color'];
- }
- else {
- $current_color = '63aa7f';
- }
-
+ $pre_defined_color = 0;
for($x = 0; $x < 5; $x++) {
for($y = 0; $y < 19; $y++) {
$gridindex = "$y,$x";
$gridcolor = $new_color_list[$gridindex];
- if ($gridcolor == $current_color) {
+ if ($gridcolor == $color) {
$pre_defined_color = 1;
break;
}
}
}
- if (!isset($message_highlight_list[$theid]['color']))
- $selected_choose = ' checked';
+ if (isset($theid) && !isset($message_highlight_list[$theid]['color']))
+ $selected_choose = TRUE;
else if ($pre_defined_color)
- $selected_predefined = ' checked';
+ $selected_predefined = TRUE;
else if ($selected_choose == '')
- $selected_input = ' checked';
-
- echo '\n";
}
-do_hook('options_highlight_bottom');
-?>
-