From f91a2995d99b8cae9e6880ad11d2cee49de92679 Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Wed, 12 Dec 2012 07:07:45 -0500 Subject: [PATCH] - NS field in dns slave has to be a IP address - Added missing validator for xfer field in dns zone fom --- interface/lib/classes/tools_sites.inc.php | 30 ++++++++++++++++++++++++++---- 1 files changed, 26 insertions(+), 4 deletions(-) diff --git a/interface/lib/classes/tools_sites.inc.php b/interface/lib/classes/tools_sites.inc.php index 8abf2b9..c501173 100644 --- a/interface/lib/classes/tools_sites.inc.php +++ b/interface/lib/classes/tools_sites.inc.php @@ -54,7 +54,29 @@ } return $name; } - + + function removePrefix($name, $currentPrefix, $globalPrefix) { + if($name == "") return ""; + + if($currentPrefix === '') return $name; // empty prefix, do not change name + if($currentPrefix === '#') $currentPrefix = $globalPrefix; // entry has no prefix set, maybe it was created before this function was introduced + + if($currentPrefix === '') return $name; // no current prefix and global prefix is empty -> nothing to remove here. + + return preg_replace('/^' . preg_quote($currentPrefix, '/') . '/', '', $name); // return name without prefix + } + + function getPrefix($currentPrefix, $userPrefix, $adminPrefix = false) { + global $app; + + if($currentPrefix !== '#') return $currentPrefix; // return the currently set prefix for this entry (# = no prefix set yet) + + if($adminPrefix === false) $adminPrefix = $userPrefix; + + if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) return $adminPrefix; + else return $userPrefix; + } + function getClientName($dataRecord) { global $app, $conf; if($_SESSION["s"]["user"]["typ"] != 'admin' && !$app->auth->has_clients($_SESSION['s']['user']['userid'])) { @@ -74,7 +96,7 @@ } } - $tmp = $app->db->queryOneRecord("SELECT name FROM sys_group WHERE groupid = " . intval($client_group_id)); + $tmp = $app->db->queryOneRecord("SELECT name FROM sys_group WHERE groupid = " . $app->functions->intval($client_group_id)); $clientName = $tmp['name']; if ($clientName == "") $clientName = 'default'; $clientName = $this->convertClientName($clientName); @@ -91,7 +113,7 @@ // Get the group-id from the data itself if(isset($dataRecord['client_group_id'])) { $client_group_id = $dataRecord['client_group_id']; - } elseif (isset($dataRecord['parent_domain_id'])) { + } elseif (isset($dataRecord['parent_domain_id']) && $dataRecord['parent_domain_id'] != 0) { $tmp = $app->db->queryOneRecord("SELECT sys_groupid FROM web_domain WHERE domain_id = " . $dataRecord['parent_domain_id']); $client_group_id = $tmp['sys_groupid']; } elseif(isset($dataRecord['sys_groupid'])) { @@ -100,7 +122,7 @@ $client_group_id = 0; } } - $tmp = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE groupid = " . intval($client_group_id)); + $tmp = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE groupid = " . $app->functions->intval($client_group_id)); $clientID = $tmp['client_id']; if ($clientID == '') $clientID = '0'; return $clientID; -- Gitblit v1.9.1