ftimme
2012-11-12 8e38755040c6c2073f92f0ffb087da530d0e7a0a
interface/web/sites/ajax_get_json.php
@@ -34,8 +34,11 @@
//* 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') {
@@ -43,7 +46,6 @@
   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;
@@ -62,12 +64,25 @@
   
   if($type == 'getphpfastcgi'){
      $json = '{';
      $sql = "SELECT * FROM server_php WHERE php_fastcgi_binary != '' AND php_fastcgi_ini_dir != '' AND server_id = $server_id";
      $php_records = $app->db->queryAllRecords($sql);
      $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) {
            $php_version = $php_record['name'].':'.$php_record['php_fastcgi_binary'].':'.$php_record['php_fastcgi_ini_dir'];
            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'].'",';
         }
      }
@@ -75,8 +90,67 @@
      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 .= '}';
    }
//}
header('Content-type: application/json');
echo $json;
?>