X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=src%2Foptions_highlight.php;h=872a5cdc9524453689e2f5fc20d76dd4ade344ae;hb=85ae8774dac2b84c60bdcd18b6a0e3f0bf363b1e;hp=b459b45fcb2c61a345d8d95645abe8f0d3a6b50e;hpb=fe369c7058d247ee83505595d6770d77cd7fa476;p=squirrelmail.git diff --git a/src/options_highlight.php b/src/options_highlight.php index b459b45f..872a5cdc 100644 --- a/src/options_highlight.php +++ b/src/options_highlight.php @@ -3,59 +3,42 @@ /** * options_highlight.php * - * Copyright (c) 1999-2002 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/array.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); -$SCRIPT_NAME = $_SERVER['SCRIPT_NAME']; /* end of get globals */ - + function oh_opt( $val, $sel, $tit ) { echo "\n"; } @@ -66,93 +49,112 @@ if (! isset($message_highlight_list)) { $message_highlight_list = array(); } -if ($action == 'delete' && isset($theid)) { - removePref($data_dir, $username, "highlight$theid"); - header( "Location: $SCRIPT_NAME" ); +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 (!$theid) $theid = 0; - $identname = str_replace(',', ' ', $identname); + 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); $newcolor = str_replace('\'', '', $newcolor); $value = str_replace(',', ' ', $value); - setPref($data_dir, $username, "highlight$theid", $identname.','.$newcolor.','.$value.','.$match_type); - $message_highlight_list[$theid]['name'] = $identname; - $message_highlight_list[$theid]['color'] = $newcolor; - $message_highlight_list[$theid]['value'] = $value; - $message_highlight_list[$theid]['match_type'] = $match_type; + 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', '