From 3cebc3a5fc5a6e76b80f712fc4f7a48c2c92d61e Mon Sep 17 00:00:00 2001 From: tbrehm <t.brehm@ispconfig.org> Date: Fri, 10 Jul 2009 07:33:29 -0400 Subject: [PATCH] Fixed: FS#776 - Client's limits do not apply for it's own client Improved client and reseller limit checks --- interface/lib/classes/custom_datasource.inc.php | 26 ++++++++++++++++++++++++++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/interface/lib/classes/custom_datasource.inc.php b/interface/lib/classes/custom_datasource.inc.php index d89991f..52cd8b7 100644 --- a/interface/lib/classes/custom_datasource.inc.php +++ b/interface/lib/classes/custom_datasource.inc.php @@ -64,6 +64,32 @@ } + function client_servers($field, $record) { + global $app, $conf; + + $server_type = $field['name']; + + if($_SESSION["s"]["user"]["typ"] == 'user') { + // Get the limits of the client + $client_group_id = $_SESSION["s"]["user"]["default_group"]; + $sql = "SELECT $server_type as server_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id"; + $client = $app->db->queryOneRecord($sql); + $sql = "SELECT server_id,server_name FROM server WHERE server_id = ".$client['server_id']; + } else { + $sql = "SELECT server_id,server_name FROM server WHERE dns_server = 1 ORDER BY server_name"; + } + $records = $app->db->queryAllRecords($sql); + $records_new = array(); + if(is_array($records)) { + foreach($records as $rec) { + $key = $rec['server_id']; + $records_new[$key] = $rec['server_name']; + } + } + return $records_new; + } + + } -- Gitblit v1.9.1