X-Git-Url: https://vcs.fsf.org/?p=squirrelmail.git;a=blobdiff_plain;f=src%2Foptions_highlight.php;h=1c2da7c3cb29c6c503d84b702b49faa8ef205571;hp=ae648b9e8960c47950e89944c2fa07d258c41f50;hb=fd181f534c2c598516e6f5f50fa7acb636225244;hpb=6170c5b67a268a9dc31646d7c5643befe8ec01ba diff --git a/src/options_highlight.php b/src/options_highlight.php index ae648b9e..1c2da7c3 100644 --- a/src/options_highlight.php +++ b/src/options_highlight.php @@ -1,175 +1,472 @@ -
-
-
-
- -
[" . _("New") . "]"; - echo " - ["._("Done")."]

\n"; - if (count($message_highlight_list) >= 1) { - echo "\n"; - for ($i=0; $i < count($message_highlight_list); $i++) { - echo "\n"; - echo " "; - echo " \n"; - echo " \n"; - echo "\n"; - } - echo "
\n"; - echo "[" . _("Edit") . "] ["._("Delete")."]\n"; - echo " \n"; - echo " " . $message_highlight_list[$i]["name"]; - echo " \n"; - echo " ".$message_highlight_list[$i]["match_type"]." = " . $message_highlight_list[$i]["value"]; - echo "
\n"; - echo "
\n"; - } else { - echo "
" . _("No highlighting is defined") . "

\n"; - echo "
\n"; - } - if ($action == "edit" || $action == "add") { - if (!isset($id)) $id = count($message_highlight_list); - - $color_list[0] = "4444aa"; - $color_list[1] = "44aa44"; - $color_list[2] = "aaaa44"; - $color_list[3] = "44aaaa"; - $color_list[4] = "aa44aa"; - $color_list[5] = "aaaaff"; - $color_list[6] = "aaffaa"; - $color_list[7] = "ffffaa"; - $color_list[8] = "aaffff"; - $color_list[9] = "ffaaff"; - $color_list[10] = "aaaaaa"; - $color_list[11] = "bfbfbf"; - $color_list[12] = "dfdfdf"; - $color_list[13] = "ffffff"; - for ($i=0; $i < 14; $i++) { - if ($color_list[$i] == $message_highlight_list[$id]["color"]) { - $selected_choose = " checked"; - ${"selected".$i} = " selected"; - continue; - } - } - if (!$message_highlight_list[$id]["color"]) - $selected_choose = " checked"; - else if (!$selected_choose) - $selected_input = " checked"; + +/** + * options_highlight.php + * + * Copyright (c) 1999-2004 The SquirrelMail Project Team + * Licensed under the GNU GPL. For full terms see the file COPYING. + * + * Displays message highlighting options + * + * $Id$ + * @package squirrelmail + */ + +/** Path for SquirrelMail required files. */ +define('SM_PATH','../'); + +/* 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'); + +/* 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']; +} + +/* end of get globals */ - echo "
\n"; - echo "\n"; - echo "\n"; - echo "\n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo " \n"; - echo "
\n"; - echo _("Identifying name") . ":"; - echo " \n"; - echo " "; - echo "
 
\n"; - echo _("Color") . ":"; - echo " \n"; - echo "  
\n"; - echo "  ". _("Other:") ." "._("Ex: 63aa7f")."
\n"; - echo "
 
\n"; - echo _("Match") . ":"; - echo " \n"; - echo " \n"; - echo "  ("; - echo _("Regular Expression"); - echo ")\n
\n"; - echo "
\n"; - echo "
\n"; - } +function oh_opt( $val, $sel, $tit ) { + echo "\n"; +} + +if (! isset($action)) { + $action = ''; +} +if (! isset($message_highlight_list)) { + $message_highlight_list = array(); +} + +if (isset($theid) && ($action == 'delete') || + ($action == 'up') || + ($action == 'down')) { + $new_rules = array(); + switch($action) { + case('delete'): + foreach($message_highlight_list as $rid => $rule) { + if($rid != $theid) { + $new_rules[] = $rule; + } + } + break; + case('down'): + $theid++; + case('up'): + foreach($message_highlight_list as $rid => $rule) { + if($rid == $theid) { + $temp_rule = $new_rules[$rid-1]; + $new_rules[$rid-1] = $rule; + $new_rules[$rid] = $temp_rule; + } else { + $new_rules[$rid] = $rule; + } + } + break; + default: + $new_rules = $message_highlight_list; + break; + } + $message_highlight_list = $new_rules; + + setPref($data_dir, $username, 'hililist', serialize($message_highlight_list)); + + header( 'Location: ' .get_location(). '/options_highlight.php' ); + exit; +} else if ($action == 'save') { + + if ($color_type == 1) $newcolor = $newcolor_choose; + elseif ($color_type == 2) $newcolor = $newcolor_input; + else $newcolor = $color_type; + + $newcolor = str_replace('#', '', $newcolor); + $newcolor = str_replace('"', '', $newcolor); + $newcolor = str_replace('\'', '', $newcolor); + $value = str_replace(',', ' ', $value); + + if(isset($theid)) { + $message_highlight_list[$theid] = + array( 'name' => $identname, 'color' => $newcolor, + 'value' => $value, 'match_type' => $match_type ); + } else { + $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'] ) { + case 'from' : + $match_type = _("From"); + break; + case 'to' : + $match_type = _("To"); + break; + case 'cc' : + $match_type = _("Cc"); + break; + case 'to_cc' : + $match_type = _("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"; + } + echo "\n". + "
\n"; +} else { + echo '
' . _("No highlighting is defined") . "

\n". + "
\n"; +} +if ($action == 'edit' || $action == 'add') { + + $color_list[0] = '4444aa'; + $color_list[1] = '44aa44'; + $color_list[2] = 'aaaa44'; + $color_list[3] = '44aaaa'; + $color_list[4] = 'aa44aa'; + $color_list[5] = 'aaaaff'; + $color_list[6] = 'aaffaa'; + $color_list[7] = 'ffffaa'; + $color_list[8] = 'aaffff'; + $color_list[9] = 'ffaaff'; + $color_list[10] = 'aaaaaa'; + $color_list[11] = 'bfbfbf'; + $color_list[12] = 'dfdfdf'; + $color_list[13] = 'ffffff'; + + # helpful color chart from http://www.visibone.com/colorlab/big.html + $new_color_list["0,0"] = 'cccccc'; + $new_color_list["0,1"] = '999999'; + $new_color_list["0,2"] = '666666'; + $new_color_list["0,3"] = '333333'; + $new_color_list["0,4"] = '000000'; + + # red + $new_color_list["1,0"] = 'ff0000'; + $new_color_list["1,1"] = 'cc0000'; + $new_color_list["1,2"] = '990000'; + $new_color_list["1,3"] = '660000'; + $new_color_list["1,4"] = '330000'; + + $new_color_list["2,0"] = 'ffcccc'; + $new_color_list["2,1"] = 'cc9999'; + $new_color_list["2,2"] = '996666'; + $new_color_list["2,3"] = '663333'; + $new_color_list["2,4"] = '330000'; + + $new_color_list["3,0"] = 'ffcccc'; + $new_color_list["3,1"] = 'ff9999'; + $new_color_list["3,2"] = 'ff6666'; + $new_color_list["3,3"] = 'ff3333'; + $new_color_list["3,4"] = 'ff0000'; + + # green + $new_color_list["4,0"] = '00ff00'; + $new_color_list["4,1"] = '00cc00'; + $new_color_list["4,2"] = '009900'; + $new_color_list["4,3"] = '006600'; + $new_color_list["4,4"] = '003300'; + + $new_color_list["5,0"] = 'ccffcc'; + $new_color_list["5,1"] = '99cc99'; + $new_color_list["5,2"] = '669966'; + $new_color_list["5,3"] = '336633'; + $new_color_list["5,4"] = '003300'; + + $new_color_list["6,0"] = 'ccffcc'; + $new_color_list["6,1"] = '99ff99'; + $new_color_list["6,2"] = '66ff66'; + $new_color_list["6,3"] = '33ff33'; + $new_color_list["6,4"] = '00ff00'; + + # blue + $new_color_list["7,0"] = '0000ff'; + $new_color_list["7,1"] = '0000cc'; + $new_color_list["7,2"] = '000099'; + $new_color_list["7,3"] = '000066'; + $new_color_list["7,4"] = '000033'; + + $new_color_list["8,0"] = 'ccccff'; + $new_color_list["8,1"] = '9999cc'; + $new_color_list["8,2"] = '666699'; + $new_color_list["8,3"] = '333366'; + $new_color_list["8,4"] = '000033'; + + $new_color_list["9,0"] = 'ccccff'; + $new_color_list["9,1"] = '9999ff'; + $new_color_list["9,2"] = '6666ff'; + $new_color_list["9,3"] = '3333ff'; + $new_color_list["9,4"] = '0000ff'; + + # yellow + $new_color_list["10,0"] = 'ffff00'; + $new_color_list["10,1"] = 'cccc00'; + $new_color_list["10,2"] = '999900'; + $new_color_list["10,3"] = '666600'; + $new_color_list["10,4"] = '333300'; + + $new_color_list["11,0"] = 'ffffcc'; + $new_color_list["11,1"] = 'cccc99'; + $new_color_list["11,2"] = '999966'; + $new_color_list["11,3"] = '666633'; + $new_color_list["11,4"] = '333300'; + + $new_color_list["12,0"] = 'ffffcc'; + $new_color_list["12,1"] = 'ffff99'; + $new_color_list["12,2"] = 'ffff66'; + $new_color_list["12,3"] = 'ffff33'; + $new_color_list["12,4"] = 'ffff00'; + + # cyan + $new_color_list["13,0"] = '00ffff'; + $new_color_list["13,1"] = '00cccc'; + $new_color_list["13,2"] = '009999'; + $new_color_list["13,3"] = '006666'; + $new_color_list["13,4"] = '003333'; + + $new_color_list["14,0"] = 'ccffff'; + $new_color_list["14,1"] = '99cccc'; + $new_color_list["14,2"] = '669999'; + $new_color_list["14,3"] = '336666'; + $new_color_list["14,4"] = '003333'; + + $new_color_list["15,0"] = 'ccffff'; + $new_color_list["15,1"] = '99ffff'; + $new_color_list["15,2"] = '66ffff'; + $new_color_list["15,3"] = '33ffff'; + $new_color_list["15,4"] = '00ffff'; + + # magenta + $new_color_list["16,0"] = 'ff00ff'; + $new_color_list["16,1"] = 'cc00cc'; + $new_color_list["16,2"] = '990099'; + $new_color_list["16,3"] = '660066'; + $new_color_list["16,4"] = '330033'; + + $new_color_list["17,0"] = 'ffccff'; + $new_color_list["17,1"] = 'cc99cc'; + $new_color_list["17,2"] = '996699'; + $new_color_list["17,3"] = '663366'; + $new_color_list["17,4"] = '330033'; + + $new_color_list["18,0"] = 'ffccff'; + $new_color_list["18,1"] = 'ff99ff'; + $new_color_list["18,2"] = 'ff66ff'; + $new_color_list["18,3"] = 'ff33ff'; + $new_color_list["18,4"] = 'ff00ff'; + + $selected_input = ''; + $selected_choose = ''; + + for ($i=0; $i < 14; $i++) { + ${"selected".$i} = ''; + } + 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'; + 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) { + $pre_defined_color = 1; + break; + } + } + } + + if (!isset($message_highlight_list[$theid]['color'])) + $selected_choose = ' checked'; + else if ($pre_defined_color) + $selected_predefined = ' checked'; + 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"; + } + 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"; + echo "
\n"; +} +do_hook('options_highlight_bottom'); ?> - +