From f382f091aa97d10056b4c433aa55298fece010d4 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Wed, 13 Aug 2014 07:16:30 -0400
Subject: [PATCH] Merge remote-tracking branch 'ispc/master'
---
interface/lib/classes/tools_sites.inc.php | 33 ++++++++++++++++++++++++++++-----
1 files changed, 28 insertions(+), 5 deletions(-)
diff --git a/interface/lib/classes/tools_sites.inc.php b/interface/lib/classes/tools_sites.inc.php
index c636bbc..3400c5b 100644
--- a/interface/lib/classes/tools_sites.inc.php
+++ b/interface/lib/classes/tools_sites.inc.php
@@ -47,7 +47,7 @@
$name=str_replace('['.$keyword.']', $this->getClientID($dataRecord), $name);
break;
case 'DOMAINID':
- $name=str_replace('['.$keyword.']', $dataRecord['parent_domain_id'], $name);
+ $name=str_replace('['.$keyword.']', $dataRecord['parent_domain_id'] ? $dataRecord['parent_domain_id'] : '[DOMAINID]', $name);
break;
}
}
@@ -92,7 +92,7 @@
} elseif(isset($dataRecord['sys_groupid'])) {
$client_group_id = $dataRecord['sys_groupid'];
} else {
- $client_group_id = 0;
+ return '[CLIENTNAME]';
}
}
@@ -119,7 +119,7 @@
} elseif(isset($dataRecord['sys_groupid'])) {
$client_group_id = $dataRecord['sys_groupid'];
} else {
- $client_group_id = 0;
+ return '[CLIENTID]';
}
}
$tmp = $app->db->queryOneRecord("SELECT client_id FROM sys_group WHERE groupid = " . $app->functions->intval($client_group_id));
@@ -144,10 +144,20 @@
return $res;
}
- function getDomainModuleDomains() {
+ function getDomainModuleDomains($not_used_in_table = null, $selected_domain = null) {
global $app;
$sql = "SELECT domain_id, domain FROM domain WHERE";
+ if ($not_used_in_table) {
+ if (strpos($not_used_in_table, 'dns') !== false) {
+ $field = "origin";
+ $select = "SUBSTRING($field, 1, CHAR_LENGTH($field) - 1)";
+ } else {
+ $field = "domain";
+ $select = $field;
+ }
+ $sql .= " domain NOT IN (SELECT $select FROM ?? WHERE $field != ?) AND";
+ }
if ($_SESSION["s"]["user"]["typ"] == 'admin') {
$sql .= " 1";
} else {
@@ -155,7 +165,7 @@
$sql .= " sys_groupid IN (".$groups.")";
}
$sql .= " ORDER BY domain";
- return $app->db->queryAllRecords($sql);
+ return $app->db->queryAllRecords($sql, $not_used_in_table, $selected_domain);
}
function checkDomainModuleDomain($domain_id) {
@@ -171,6 +181,19 @@
return $domain['domain'];
}
+ function getClientIdForDomain($domain_id) {
+ global $app;
+
+ $sql = "SELECT sys_groupid FROM domain WHERE domain_id = " . $app->functions->intval($domain_id);
+ if ($_SESSION["s"]["user"]["typ"] != 'admin') {
+ $groups = ( $_SESSION["s"]["user"]["groups"] ) ? $_SESSION["s"]["user"]["groups"] : 0;
+ $sql .= " AND sys_groupid IN (".$groups.")";
+ }
+ $domain = $app->db->queryOneRecord($sql);
+ if(!$domain || !$domain['sys_groupid']) return false;
+ return $domain['sys_groupid'];
+ }
+
}
?>
--
Gitblit v1.9.1