From a4410bfcaa91e7ccfbd7c3cdabcc2177d1b75e2c Mon Sep 17 00:00:00 2001 From: Christian Boltz Date: Tue, 21 Aug 2007 22:11:07 +0000 Subject: [PATCH] - merged edit-alias.php and admin/edit-alias.php - merged identical parts of GET and POST code git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@41 a1433add-5e2c-0410-b055-b7f2511e0802 --- admin/edit-alias.php | 85 ++------------------------------------------ edit-alias.php | 46 ++++++++++++++---------- 2 files changed, 29 insertions(+), 102 deletions(-) diff --git a/admin/edit-alias.php b/admin/edit-alias.php index 13b96198..15323b4d 100644 --- a/admin/edit-alias.php +++ b/admin/edit-alias.php @@ -20,89 +20,8 @@ // fDomain // fGoto // -require ("../variables.inc.php"); -require ("../config.inc.php"); -require ("../functions.inc.php"); -include ("../languages/" . check_language () . ".lang"); -$SESSID_USERNAME = check_session (); -(!check_admin($SESSID_USERNAME) ? header("Location: " . $CONF['postfix_admin_url'] . "/main.php") && exit : '1'); +$incpath = ".."; +require("../edit-alias.php"); -if ($_SERVER['REQUEST_METHOD'] == "GET") -{ - if (isset ($_GET['address'])) $fAddress = escape_string ($_GET['address']); - if (isset ($_GET['domain'])) $fDomain = escape_string ($_GET['domain']); - - $result = db_query ("SELECT * FROM $table_alias WHERE address='$fAddress' AND domain='$fDomain'"); - if ($result['rows'] == 1) - { - $row = db_array ($result['result']); - $tGoto = $row['goto']; - } - else - { - $tMessage = $PALANG['pEdit_alias_address_error']; - } - - include ("../templates/header.tpl"); - include ("../templates/admin_menu.tpl"); - include ("../templates/edit-alias.tpl"); - include ("../templates/footer.tpl"); -} - -if ($_SERVER['REQUEST_METHOD'] == "POST") -{ - $pEdit_alias_goto = $PALANG['pEdit_alias_goto']; - - if (isset ($_GET['address'])) $fAddress = escape_string ($_GET['address']); - $fAddress = strtolower ($fAddress); - if (isset ($_GET['domain'])) $fDomain = escape_string ($_GET['domain']); - if (isset ($_POST['fGoto'])) $fGoto = escape_string ($_POST['fGoto']); - $fGoto = strtolower ($fGoto); - - if (empty ($fGoto)) - { - $error = 1; - $tGoto = $fGoto; - $tMessage = $PALANG['pEdit_alias_goto_text_error1']; - } - - $goto = preg_replace ('/\\\r\\\n/', ',', $fGoto); - $goto = preg_replace ('/\r\n/', ',', $goto); - $goto = preg_replace ('/[\s]+/i', '', $goto); - $goto = preg_replace ('/\,*$/', '', $goto); - $array = preg_split ('/,/', $goto); - - for ($i = 0; $i < sizeof ($array); $i++) { - if (in_array ("$array[$i]", $CONF['default_aliases'])) continue; - if (empty ($array[$i])) continue; - if (!check_email ($array[$i])) - { - $error = 1; - $tGoto = $goto; - $tMessage = $PALANG['pEdit_alias_goto_text_error2'] . "$array[$i]"; - } - } - - if ($error != 1) - { - $result = db_query ("UPDATE $table_alias SET goto='$goto',modified=NOW() WHERE address='$fAddress' AND domain='$fDomain'"); - if ($result['rows'] != 1) - { - $tMessage = $PALANG['pEdit_alias_result_error']; - } - else - { - db_log ($CONF['admin_email'], $fDomain, "edit alias", "$fAddress -> $goto"); - - header ("Location: list-virtual.php?domain=$fDomain"); - exit; - } - } - - include ("../templates/header.tpl"); - include ("../templates/admin_menu.tpl"); - include ("../templates/edit-alias.tpl"); - include ("../templates/footer.tpl"); -} ?> diff --git a/edit-alias.php b/edit-alias.php index 4515eef0..dde57c1c 100644 --- a/edit-alias.php +++ b/edit-alias.php @@ -20,10 +20,13 @@ // fDomain // fGoto // -require ("./variables.inc.php"); -require ("./config.inc.php"); -require ("./functions.inc.php"); -include ("./languages/" . check_language () . ".lang"); + +if (!isset($incpath)) $incpath = '.'; + +require ("$incpath/variables.inc.php"); +require ("$incpath/config.inc.php"); +require ("$incpath/functions.inc.php"); +include ("$incpath/languages/" . check_language () . ".lang"); $SESSID_USERNAME = check_session (); @@ -32,7 +35,7 @@ if ($_SERVER['REQUEST_METHOD'] == "GET") if (isset ($_GET['address'])) $fAddress = escape_string ($_GET['address']); if (isset ($_GET['domain'])) $fDomain = escape_string ($_GET['domain']); - if (check_owner ($SESSID_USERNAME, $fDomain)) + if (check_owner ($SESSID_USERNAME, $fDomain) || check_admin($SESSID_USERNAME)) { $result = db_query ("SELECT * FROM $table_alias WHERE address='$fAddress' AND domain='$fDomain'"); if ($result['rows'] == 1) @@ -45,11 +48,6 @@ if ($_SERVER['REQUEST_METHOD'] == "GET") { $tMessage = $PALANG['pEdit_alias_address_error']; } - - include ("./templates/header.tpl"); - include ("./templates/menu.tpl"); - include ("./templates/edit-alias.tpl"); - include ("./templates/footer.tpl"); } if ($_SERVER['REQUEST_METHOD'] == "POST") @@ -62,7 +60,7 @@ if ($_SERVER['REQUEST_METHOD'] == "POST") if (isset ($_POST['fGoto'])) $fGoto = escape_string ($_POST['fGoto']); $fGoto = strtolower ($fGoto); - if (!check_owner ($SESSID_USERNAME, $fDomain)) + if (! (check_owner ($SESSID_USERNAME, $fDomain) || check_admin($SESSID_USERNAME)) ) { $error = 1; $tGoto = $_POST['fGoto']; @@ -71,7 +69,7 @@ if ($_SERVER['REQUEST_METHOD'] == "POST") elseif (!check_alias_owner ($SESSID_USERNAME, $fAddress)) { $error = 1; - $tGoto = $_POST['fGoto']; + $tGoto = $fGoto; $tMessage = $PALANG['pEdit_alias_result_error']; } elseif (empty ($fGoto)) @@ -115,15 +113,25 @@ if ($_SERVER['REQUEST_METHOD'] == "POST") else { db_log ($SESSID_USERNAME, $fDomain, "edit alias", "$fAddress -> $goto"); - - header ("Location: overview.php?domain=$fDomain"); + + if (check_admin($SESSID_USERNAME)) { + header ("Location: list-virtual.php?domain=$fDomain"); + } else { + header ("Location: overview.php?domain=$fDomain"); + } exit; } } - - include ("./templates/header.tpl"); - include ("./templates/menu.tpl"); - include ("./templates/edit-alias.tpl"); - include ("./templates/footer.tpl"); } + +include ("$incpath/templates/header.tpl"); + +if (check_admin($SESSID_USERNAME)) { + include ("$incpath/templates/admin_menu.tpl"); +} else { + include ("$incpath/templates/menu.tpl"); +} + +include ("$incpath/templates/edit-alias.tpl"); +include ("$incpath/templates/footer.tpl"); ?>