From d5473beac0fb8fdd2b11be1f7fd286d2aaed1649 Mon Sep 17 00:00:00 2001
From: Falko Timme <ft@falkotimme.com>
Date: Tue, 22 Oct 2013 09:58:40 -0400
Subject: [PATCH] - Display server name in all web domains select fields so that you know which domain from which server you select.

---
 interface/web/sites/form/ftp_user.tform.php            |    4 ++--
 interface/web/sites/form/web_vhost_subdomain.tform.php |    4 ++--
 interface/web/sites/lib/lang/de_cron.lng               |    1 +
 interface/web/sites/lib/lang/en_cron.lng               |    1 +
 interface/lib/classes/tform.inc.php                    |    5 +++++
 interface/web/sites/form/web_folder.tform.php          |    4 ++--
 interface/web/sites/form/cron.tform.php                |    4 ++--
 interface/web/sites/form/web_aliasdomain.tform.php     |    4 ++--
 interface/lib/classes/custom_datasource.inc.php        |    4 ++--
 interface/web/sites/form/database.tform.php            |    4 ++--
 interface/web/sites/form/web_folder_user.tform.php     |    4 +---
 interface/web/sites/form/shell_user.tform.php          |    4 ++--
 interface/web/sites/form/web_subdomain.tform.php       |    4 ++--
 13 files changed, 26 insertions(+), 21 deletions(-)

diff --git a/interface/lib/classes/custom_datasource.inc.php b/interface/lib/classes/custom_datasource.inc.php
index 35bf7d5..f309d01 100644
--- a/interface/lib/classes/custom_datasource.inc.php
+++ b/interface/lib/classes/custom_datasource.inc.php
@@ -77,13 +77,13 @@
 		}
 		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 = $app->db->queryAllRecords("SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id IN (".$server_ids.") AND web_domain.server_id = server.server_id AND ".$app->tform->getAuthSQL('r', 'web_domain')." ORDER BY web_domain.domain");
 		
 		$records_new = array();
 		if(is_array($records)) {
 			foreach($records as $rec) {
 				$key = $rec['domain_id'];
-				$records_new[$key] = $rec['domain'];
+				$records_new[$key] = $rec['parent_domain'];
 			}
 		}
 		return $records_new;
diff --git a/interface/lib/classes/tform.inc.php b/interface/lib/classes/tform.inc.php
index 7138154..706d3b0 100644
--- a/interface/lib/classes/tform.inc.php
+++ b/interface/lib/classes/tform.inc.php
@@ -251,6 +251,7 @@
 						unset($tmp_recordid);
 						
                         $querystring = str_replace("{AUTHSQL}",$this->getAuthSQL('r'),$querystring);
+						$querystring = preg_replace_callback('@{AUTHSQL::(.+?)}@', "self::table_auth_sql", $querystring);
 						
                         // Getting the records
                         $tmp_records = $app->db->queryAllRecords($querystring);
@@ -292,6 +293,10 @@
 
         }
 		
+		function table_auth_sql($matches){
+			return $this->getAuthSQL('r', $matches[1]);
+		}
+		
 		//* If the parameter 'valuelimit' is set
 		function applyValueLimit($limit,$values) {
 			
diff --git a/interface/web/sites/form/cron.tform.php b/interface/web/sites/form/cron.tform.php
index 3a7bd6d..41c2a31 100644
--- a/interface/web/sites/form/cron.tform.php
+++ b/interface/web/sites/form/cron.tform.php
@@ -79,9 +79,9 @@
             'formtype'  => 'SELECT',
             'default'   => '',
             'datasource'    => array (  'type'  => 'SQL',
-                                        'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+                                        'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
                                         'keyfield'=> 'domain_id',
-                                        'valuefield'=> 'domain'
+                                        'valuefield'=> 'parent_domain'
                                      ),
             'value'     => ''
         ),
diff --git a/interface/web/sites/form/database.tform.php b/interface/web/sites/form/database.tform.php
index e390f72..58ce040 100644
--- a/interface/web/sites/form/database.tform.php
+++ b/interface/web/sites/form/database.tform.php
@@ -79,9 +79,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> array('0' => 'select_site_txt')
 		),
diff --git a/interface/web/sites/form/ftp_user.tform.php b/interface/web/sites/form/ftp_user.tform.php
index 543d863..7dece14 100644
--- a/interface/web/sites/form/ftp_user.tform.php
+++ b/interface/web/sites/form/ftp_user.tform.php
@@ -79,9 +79,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> ''
 		),
diff --git a/interface/web/sites/form/shell_user.tform.php b/interface/web/sites/form/shell_user.tform.php
index 61d92b3..1ae077d 100644
--- a/interface/web/sites/form/shell_user.tform.php
+++ b/interface/web/sites/form/shell_user.tform.php
@@ -79,9 +79,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> ''
 		),
diff --git a/interface/web/sites/form/web_aliasdomain.tform.php b/interface/web/sites/form/web_aliasdomain.tform.php
index e815034..528234a 100644
--- a/interface/web/sites/form/web_aliasdomain.tform.php
+++ b/interface/web/sites/form/web_aliasdomain.tform.php
@@ -106,9 +106,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> ''
 		),
diff --git a/interface/web/sites/form/web_folder.tform.php b/interface/web/sites/form/web_folder.tform.php
index 5a6e565..2cef461 100644
--- a/interface/web/sites/form/web_folder.tform.php
+++ b/interface/web/sites/form/web_folder.tform.php
@@ -74,9 +74,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE (type = 'vhost' OR type = 'vhostsubdomain') AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE (web_domain.type = 'vhost' OR web_domain.type = 'vhostsubdomain') AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> ''
 		),
diff --git a/interface/web/sites/form/web_folder_user.tform.php b/interface/web/sites/form/web_folder_user.tform.php
index 187bd54..1a034df 100644
--- a/interface/web/sites/form/web_folder_user.tform.php
+++ b/interface/web/sites/form/web_folder_user.tform.php
@@ -50,8 +50,6 @@
 $form["auth_preset"]["perm_group"] = 'riud'; //r = read, i = insert, u = update, d = delete
 $form["auth_preset"]["perm_other"] = ''; //r = read, i = insert, u = update, d = delete
 
-$auth_sql = (isset($app->tform) ? $app->tform->getAuthSQL('r', 'web_domain') : '1');
-
 $form["tabs"]['user'] = array (
 	'title' 	=> "Folder",
 	'width' 	=> 100,
@@ -76,7 +74,7 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "Select concat(web_domain.domain,' ',web_folder.path) as name, web_folder.web_folder_id from web_domain, web_folder WHERE web_domain.domain_id = web_folder.parent_domain_id AND ".$auth_sql." ORDER BY web_domain.domain",
+										'querystring' => "Select concat(web_domain.domain,' ',web_folder.path, ' :: ', server.server_name) as name, web_folder.web_folder_id from web_domain, web_folder, server WHERE web_domain.domain_id = web_folder.parent_domain_id AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'web_folder_id',
 										'valuefield'=> 'name'
 									 ),
diff --git a/interface/web/sites/form/web_subdomain.tform.php b/interface/web/sites/form/web_subdomain.tform.php
index 0205c56..385945c 100644
--- a/interface/web/sites/form/web_subdomain.tform.php
+++ b/interface/web/sites/form/web_subdomain.tform.php
@@ -106,9 +106,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> '',
 			'searchable' => 2
diff --git a/interface/web/sites/form/web_vhost_subdomain.tform.php b/interface/web/sites/form/web_vhost_subdomain.tform.php
index 116428c..e424afa 100644
--- a/interface/web/sites/form/web_vhost_subdomain.tform.php
+++ b/interface/web/sites/form/web_vhost_subdomain.tform.php
@@ -140,9 +140,9 @@
 			'formtype'	=> 'SELECT',
 			'default'	=> '',
 			'datasource'	=> array ( 	'type'	=> 'SQL',
-										'querystring' => "SELECT domain_id,domain FROM web_domain WHERE type = 'vhost' AND {AUTHSQL} ORDER BY domain",
+										'querystring' => "SELECT web_domain.domain_id, CONCAT(web_domain.domain, ' :: ', server.server_name) AS parent_domain FROM web_domain, server WHERE web_domain.type = 'vhost' AND web_domain.server_id = server.server_id AND {AUTHSQL::web_domain} ORDER BY web_domain.domain",
 										'keyfield'=> 'domain_id',
-										'valuefield'=> 'domain'
+										'valuefield'=> 'parent_domain'
 									 ),
 			'value'		=> ''
 		),
diff --git a/interface/web/sites/lib/lang/de_cron.lng b/interface/web/sites/lib/lang/de_cron.lng
index 4eaced6..aec80b2 100644
--- a/interface/web/sites/lib/lang/de_cron.lng
+++ b/interface/web/sites/lib/lang/de_cron.lng
@@ -18,4 +18,5 @@
 $wb['run_wday_error_format'] = 'Das Format für Wochentage ist nicht korrekt.';
 $wb['command_error_format'] = 'Das Format für den Befehl ist nicht korrekt. Beachten Sie, dass bei einem URL Aufruf nur http und https erlaubt ist.';
 $wb['unknown_fieldtype_error'] = 'Es wurde ein unbekanntes Feld verwendet.';
+$wb['server_id_error_empty'] = 'Die Server-ID ist leer.';
 ?>
\ No newline at end of file
diff --git a/interface/web/sites/lib/lang/en_cron.lng b/interface/web/sites/lib/lang/en_cron.lng
index 8cb7f08..e6ba8ad 100644
--- a/interface/web/sites/lib/lang/en_cron.lng
+++ b/interface/web/sites/lib/lang/en_cron.lng
@@ -18,4 +18,5 @@
 $wb['run_wday_error_format'] = 'Invalid format for days of the week.';
 $wb['command_error_format'] = 'Invalid command format. Please note that in case of an url call only http/https is allowed.';
 $wb['unknown_fieldtype_error'] = 'An unknown field type has been used.';
+$wb['server_id_error_empty'] = 'The server ID is empty.';
 ?>
\ No newline at end of file

--
Gitblit v1.9.1