From bd665926c745cc57498430e8fe9a08494367801c Mon Sep 17 00:00:00 2001 From: Sebastien JEAN <sebastien.jean54@gmail.com> Date: Fri, 08 Nov 2013 08:45:58 -0500 Subject: [PATCH] adding multi-server management for clients --- interface/lib/classes/custom_datasource.inc.php | 41 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 41 insertions(+), 0 deletions(-) diff --git a/interface/lib/classes/custom_datasource.inc.php b/interface/lib/classes/custom_datasource.inc.php index 52ba34c..54fb59c 100644 --- a/interface/lib/classes/custom_datasource.inc.php +++ b/interface/lib/classes/custom_datasource.inc.php @@ -63,6 +63,32 @@ return $records_new; } + function webdav_domains($field, $record) { + global $app, $conf; + + $servers = $app->db->queryAllRecords("SELECT * FROM server WHERE active = 1 AND mirror_server_id = 0"); + $server_ids = array(); + $app->uses('getconf'); + if(is_array($servers) && !empty($servers)){ + foreach($servers as $server){ + $web_config = $app->getconf->get_server_config($server['server_id'], 'web'); + if($web_config['server_type'] != 'nginx') $server_ids[] = $server['server_id']; + } + } + if(count($server_ids) == 0) return array(); + $server_ids = implode(',', $server_ids); + $records = $app->db->queryAllRecords("SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND server_id IN (".$server_ids.") AND ".$app->tform->getAuthSQL('r')." ORDER BY domain"); + + $records_new = array(); + if(is_array($records)) { + foreach($records as $rec) { + $key = $rec['domain_id']; + $records_new[$key] = $rec['domain']; + } + } + return $records_new; + } + function client_servers($field, $record) { global $app, $conf; @@ -79,6 +105,9 @@ case 'default_dnsserver': $field = 'dns_server'; break; + case 'default_slave_dnsserver': + $field = 'dns_server'; + break; case 'default_fileserver': $field = 'file_server'; break; @@ -88,6 +117,18 @@ case 'default_vserverserver': $field = 'vserver_server'; break; + case 'mail_servers': + $field = 'mail_server'; + break; + case 'web_servers': + $field = 'web_server'; + break; + case 'dns_servers': + $field = 'dns_server'; + break; + case 'db_servers': + $field = 'db_server'; + break; default: $field = 'web_server'; break; -- Gitblit v1.9.1