From f4038a2160d55a7f519a3b42be1aa96e29e9a908 Mon Sep 17 00:00:00 2001
From: ftimme <ft@falkotimme.com>
Date: Wed, 27 Feb 2013 09:01:40 -0500
Subject: [PATCH] - Fixed "FUNCTION databasename.CONCAT does not exist" error for older MySQL versions.

---
 interface/web/sites/ajax_get_json.php |  120 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 115 insertions(+), 5 deletions(-)

diff --git a/interface/web/sites/ajax_get_json.php b/interface/web/sites/ajax_get_json.php
index a910dce..f7bbc71 100644
--- a/interface/web/sites/ajax_get_json.php
+++ b/interface/web/sites/ajax_get_json.php
@@ -34,16 +34,18 @@
 //* Check permissions for module
 $app->auth->check_module_permissions('sites');
 
-$server_id = intval($_GET["server_id"]);
-$web_id = intval($_GET["web_id"]);
+$app->uses('getconf');
+
+$server_id = $app->functions->intval($_GET["server_id"]);
+$web_id = $app->functions->intval($_GET["web_id"]);
+$php_type = $_GET["php_type"];
 $type = $_GET["type"];
 
-if($_SESSION["s"]["user"]["typ"] == 'admin') {
+//if($_SESSION["s"]["user"]["typ"] == 'admin') {
 
 	if($type == 'getservertype'){
 		$json = '{"servertype":"';
 		$server_type = 'apache';
-		$app->uses('getconf');
 		$web_config = $app->getconf->get_server_config($server_id, 'web');
 		if(!empty($web_config['server_type'])) $server_type = $web_config['server_type'];
 		$json .= $server_type;
@@ -59,8 +61,116 @@
 		unset($server);
 		$json .= '"}';
 	}
+	
+	if($type == 'getphpfastcgi'){
+		$json = '{';
+		
+		$server_type = 'apache';
+		$web_config = $app->getconf->get_server_config($server_id, 'web');
+		if(!empty($web_config['server_type'])) $server_type = $web_config['server_type'];
+		if($server_type == 'nginx' && $php_type == 'fast-cgi') $php_type = 'php-fpm';
+		if($php_type == 'php-fpm'){
+			$php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fpm_init_script != '' AND php_fpm_ini_dir != '' AND php_fpm_pool_dir != '' AND server_id = $server_id");
+		}
+		if($php_type == 'fast-cgi'){
+			$php_records = $app->db->queryAllRecords("SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = $server_id");
+		}
+		$php_select = "";
+		if(is_array($php_records) && !empty($php_records)) {
+			foreach( $php_records as $php_record) {
+				if($php_type == 'php-fpm'){
+					$php_version = $php_record['name'].':'.$php_record['php_fpm_init_script'].':'.$php_record['php_fpm_ini_dir'].':'.$php_record['php_fpm_pool_dir'];
+				} else {
+					$php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
+				}
+				$json .= '"'.$php_version.'": "'.$php_record['name'].'",';
+			}
+		}
+		unset($php_records);
+		if(substr($json,-1) == ',') $json = substr($json,0,-1);
+		$json .= '}';
+	}
+	
+	if($type == 'getphptype'){
+		$json = '{"phptype":"';
+		$sql = "SELECT php FROM web_domain WHERE domain_id = $web_id";
+		$php = $app->db->queryOneRecord($sql);
+		$json .= $php['php'];
+		unset($php);
+		$json .= '"}';
+	}
+	
+	if($type == 'getredirecttype'){
+		$json = '{"redirecttype":"';
+		$sql = "SELECT redirect_type FROM web_domain WHERE domain_id = $web_id";
+		$redirect = $app->db->queryOneRecord($sql);
+		$json .= $redirect['redirect_type'];
+		unset($redirect);
+		$json .= '"}';
+	}
+	
+	if($type == 'get_ipv4'){		
+		$result = array();
+		
+		// ipv4
+		//$result[] = _search('admin', 'server_ip', "AND ip_type = 'IPv4' AND (client_id = 0 OR client_id=".$app->functions->intval($_SESSION['s']['user']['client_id']).")");
+		$result[] = $app->functions->suggest_ips('IPv4');
 
-}
+		$json = $app->functions->json_encode($result);
+	}
+	
+	if($type == 'get_ipv6'){		
+		$result = array();
+		
+		// ipv6
+		//$result[] = _search('admin', 'server_ip', "AND ip_type = 'IPv6' AND (client_id = 0 OR client_id=".$app->functions->intval($_SESSION['s']['user']['client_id']).")");
+		$result[] = $app->functions->suggest_ips('IPv6');
+		
+		$json = $app->functions->json_encode($result);
+	}
+    
+    if($type == 'getdatabaseusers') {
+		$json = '{';
+        
+		$sql = "SELECT sys_groupid FROM web_domain WHERE domain_id = $web_id";
+        $group = $app->db->queryOneRecord($sql);
+        if($group) {
+            $sql = "SELECT database_user_id, database_user FROM web_database_user WHERE sys_groupid = '" . $group['sys_groupid'] . "'";
+            $records = $app->db->queryAllRecords($sql);
+            
+            foreach($records as $record) {
+                $json .= '"'.$record['database_user_id'].'": "'.$record['database_user'].'",';
+            }
+            unset($records);
+            unset($group);
+        }
+        
+        if(substr($json,-1) == ',') $json = substr($json,0,-1);
+		$json .= '}';
+    }
+	
+	if($type == 'get_use_combobox'){
+		$json = '{"usecombobox":"';
+		$use_combobox = 'y';
+		$server_config_array = $app->getconf->get_global_config();
+		if($server_config_array['misc']['use_combobox'] != 'y') $use_combobox = 'n';
+		$json .= $use_combobox;
+		unset($server_config_array);
+		$json .= '"}';
+	}
+	
+	if($type == 'get_use_loadindicator'){
+		$json = '{"useloadindicator":"';
+		$use_loadindicator = 'y';
+		$server_config_array = $app->getconf->get_global_config();
+		if($server_config_array['misc']['use_loadindicator'] != 'y') $use_loadindicator = 'n';
+		$json .= $use_loadindicator;
+		unset($server_config_array);
+		$json .= '"}';
+	}
 
+//}
+
+header('Content-type: application/json');
 echo $json;
 ?>
\ No newline at end of file

--
Gitblit v1.9.1