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"; - echo '' . "\n"; - if($action == 'edit') - echo '' . "\n"; - echo html_tag( 'table', '', 'center', '', 'width="80%" cellpadding="3" cellspacing="0" border="0"' ) . "\n"; - echo html_tag( 'tr', '', '', $color[0] ) . "\n"; - echo html_tag( 'td', '', 'right', '', 'nowrap' ) . "\n"; - echo _("Identifying name") . ":"; - echo ' ' . "\n"; - echo html_tag( 'td', '', 'left' ) . "\n"; - if ($action == 'edit' && isset($theid) && isset($message_highlight_list[$theid]['name'])) - $disp = $message_highlight_list[$theid]['name']; - else - $disp = ''; - $disp = htmlspecialchars($disp); - echo " "; - echo " \n"; - echo " \n"; - echo html_tag( 'tr', html_tag( 'td', ' ', 'left' ) ) ."\n"; - echo html_tag( 'tr', '', '', $color[0] ) . "\n"; - echo html_tag( 'td', ''. _("Color") . ':', 'right' ); - echo html_tag( 'td', '', 'left' ); - echo "  
\n"; - echo "  ". _("Other:") ." '._("Ex: 63aa7f")."
\n"; - echo " \n"; - echo " \n"; - - # Show grid of color choices - echo html_tag( 'tr', '', '', $color[0] ) . "\n"; - echo html_tag( 'td', '', 'left', '', 'colspan="2"' ); - echo html_tag( 'table', '', 'center', '', 'border=0 cellpadding="2" cellspacing="1"' ) . "\n"; - - for($x = 0; $x < 5; $x++) { - echo html_tag( 'tr' ) . "\n"; - for($y = 0; $y < 19; $y++) { - $gridindex = "$y,$x"; - $gridcolor = $new_color_list[$gridindex]; - $selected = ($gridcolor == $current_color) ? ' checked' : '' ; - echo html_tag( 'td', '', 'left', $gridcolor, 'colspan="2"' ); - } - echo "\n"; + $selected_input = TRUE; + + $oTemplate->assign('rule_name', $name); + $oTemplate->assign('rule_value', $value); + $oTemplate->assign('rule_field', $field); + $oTemplate->assign('rule_color', $color); + $oTemplate->assign('color_radio', ($selected_choose ? 1 : ($selected_input ? 2 : 0))); + $oTemplate->assign('color_input', ($selected_input ? $color : '')); + + echo addForm('options_highlight.php', 'post', 'f'). + addHidden('action', 'save'); + if($action == 'edit') { + echo addHidden('theid', (isset($theid)?$theid:'')); } - echo "\n"; - echo "\n"; - - echo html_tag( 'tr', html_tag( 'td', ' ', 'left' ) ) . "\n"; - echo html_tag( 'tr', '', '', $color[0] ) . "\n"; - echo html_tag( 'td', '', 'center', '', 'colspan="2"' ) . "\n"; - echo " \n"; - echo '' . _("Matches") . ': '; - if ($action == 'edit' && isset($theid) && isset($message_highlight_list[$theid]['value'])) - $disp = $message_highlight_list[$theid]['value']; - else - $disp = ''; - $disp = htmlspecialchars($disp); - echo ' '; - echo " \n"; - echo " \n"; - echo "\n"; - echo '
\n"; + + $oTemplate->display('options_highlight_addedit.tpl'); + echo "
\n"; } -do_hook('options_highlight_bottom'); -?> - +do_hook('options_highlight_bottom', $null); + +$oTemplate->display('footer.tpl');