edit-domain.php: fix bug where editing a domain nukes the transport field (we actually were not checking the config field properly to see whether transport control was turned on or not; this fixes https://sourceforge.net/tracker/index.php?func=detail&aid=2378038&group_id=191583&atid=937964

git-svn-id: https://svn.code.sf.net/p/postfixadmin/code/trunk@499 a1433add-5e2c-0410-b055-b7f2511e0802
postfixadmin-2.3
David Goodwin 17 years ago
parent ac7fb1f6c9
commit e39c133780

@ -39,69 +39,74 @@ authentication_require_role('global-admin');
if ($_SERVER['REQUEST_METHOD'] == "GET") if ($_SERVER['REQUEST_METHOD'] == "GET")
{ {
if (isset ($_GET['domain'])) if (isset ($_GET['domain']))
{ {
$domain = escape_string ($_GET['domain']); $domain = escape_string ($_GET['domain']);
$domain_properties = get_domain_properties ($domain); $domain_properties = get_domain_properties ($domain);
$tDescription = $domain_properties['description']; $tDescription = $domain_properties['description'];
$tAliases = $domain_properties['aliases']; $tAliases = $domain_properties['aliases'];
$tMailboxes = $domain_properties['mailboxes']; $tMailboxes = $domain_properties['mailboxes'];
$tMaxquota = $domain_properties['maxquota']; $tMaxquota = $domain_properties['maxquota'];
$tTransport = $domain_properties['transport']; $tTransport = $domain_properties['transport'];
$tBackupmx = $domain_properties['backupmx']; $tBackupmx = $domain_properties['backupmx'];
$tActive = $domain_properties['active']; $tActive = $domain_properties['active'];
} }
} }
if ($_SERVER['REQUEST_METHOD'] == "POST") if ($_SERVER['REQUEST_METHOD'] == "POST")
{ {
if (isset ($_GET['domain'])) $domain = escape_string ($_GET['domain']); if (isset ($_GET['domain'])) $domain = escape_string ($_GET['domain']);
if (isset ($_POST['fDescription'])) $fDescription = escape_string ($_POST['fDescription']); if (isset ($_POST['fDescription'])) $fDescription = escape_string ($_POST['fDescription']);
if (isset ($_POST['fAliases'])) $fAliases = intval($_POST['fAliases']); if (isset ($_POST['fAliases'])) $fAliases = intval($_POST['fAliases']);
if (isset ($_POST['fMailboxes'])) $fMailboxes = intval($_POST['fMailboxes']); if (isset ($_POST['fMailboxes'])) $fMailboxes = intval($_POST['fMailboxes']);
if (isset ($_POST['fMaxquota'])) { if (isset ($_POST['fMaxquota'])) {
$fMaxquota = intval($_POST['fMaxquota']); $fMaxquota = intval($_POST['fMaxquota']);
} else { } else {
$fMaxquota = 0; $fMaxquota = 0;
} }
if (isset ($_POST['fTransport'])) $fTransport = escape_string ($_POST['fTransport']);
if (isset ($_POST['fBackupmx'])) $fBackupmx = escape_string ($_POST['fBackupmx']);
if (isset ($_POST['fActive'])) $fActive = escape_string ($_POST['fActive']);
if ($fBackupmx == "on") $fTransport = $CONF['transport_default'];
{ if($CONF['transport'] != 'NO' && isset ($_POST['fTransport'])) {
$fAliases = -1; $fTransport = escape_string ($_POST['fTransport']);
$fMailboxes = -1; }
$fMaxquota = -1;
$fBackupmx = 1;
$sqlBackupmx = db_get_boolean(True);
}
else
{
$fBackupmx = 0;
$sqlBackupmx = db_get_boolean(False);
}
if ($fActive == "on") { if (isset ($_POST['fBackupmx'])) $fBackupmx = escape_string ($_POST['fBackupmx']);
$sqlActive = db_get_boolean(True); if (isset ($_POST['fActive'])) $fActive = escape_string ($_POST['fActive']);
}
else {
$sqlActive = db_get_boolean(False);
}
if ($fBackupmx == "on")
{
$fAliases = -1;
$fMailboxes = -1;
$fMaxquota = -1;
$fBackupmx = 1;
$sqlBackupmx = db_get_boolean(True);
}
else
{
$fBackupmx = 0;
$sqlBackupmx = db_get_boolean(False);
}
$result = db_query ("UPDATE $table_domain SET description='$fDescription',aliases=$fAliases,mailboxes=$fMailboxes,maxquota=$fMaxquota,transport='$fTransport',backupmx='$sqlBackupmx',active='$sqlActive',modified=NOW() WHERE domain='$domain'"); if ($fActive == "on") {
if ($result['rows'] == 1) $sqlActive = db_get_boolean(True);
{ }
header ("Location: list-domain.php"); else {
exit; $sqlActive = db_get_boolean(False);
} }
else
{
$tMessage = $PALANG['pAdminEdit_domain_result_error']; $result = db_query ("UPDATE $table_domain SET description='$fDescription',aliases=$fAliases,mailboxes=$fMailboxes,maxquota=$fMaxquota,transport='$fTransport',backupmx='$sqlBackupmx',active='$sqlActive',modified=NOW() WHERE domain='$domain'");
} if ($result['rows'] == 1)
{
header ("Location: list-domain.php");
exit;
}
else
{
$tMessage = $PALANG['pAdminEdit_domain_result_error'];
}
} }
include ("templates/header.php"); include ("templates/header.php");

Loading…
Cancel
Save