tbrehm
2013-07-31 615a0a96618fa99e7e452523145d6c0f238d4473
interface/web/sites/web_vhost_subdomain_edit.php
@@ -131,7 +131,7 @@
         // Get the limits of the client
         $client_group_id = $_SESSION["s"]["user"]["default_group"];
         $client = $app->db->queryOneRecord("SELECT client.client_id, client.limit_web_subdomain, client.default_webserver, client.contact_name, CONCAT(client.company_name,' :: ',client.contact_name) as contactname, sys_group.name, client." . implode(", client.", $read_limits) . " FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
         $client = $app->db->queryOneRecord("SELECT client.client_id, client.limit_web_subdomain, client.default_webserver, client.contact_name, CONCAT(IF(client.company_name != '', CONCAT(client.company_name, ' :: '), ''), client.contact_name, ' (', client.username, IF(client.customer_no != '', CONCAT(', ', client.customer_no), ''), ')') as contactname, sys_group.name, client." . implode(", client.", $read_limits) . " FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
         
         //* Get global web config
         $web_config = $app->getconf->get_server_config($parent_domain['server_id'], 'web');
@@ -164,6 +164,53 @@
            // add limits to template to be able to hide settings
            foreach($read_limits as $limit) $app->tpl->setVar($limit, $client[$limit]);
            
            $sites_config = $app->getconf->get_global_config('sites');
            if($sites_config['reseller_can_use_options']) {
                // Directive Snippets
                $php_directive_snippets = $app->db->queryAllRecords("SELECT * FROM directive_snippets WHERE type = 'php' AND active = 'y'");
                $php_directive_snippets_txt = '';
                if(is_array($php_directive_snippets) && !empty($php_directive_snippets)){
                        foreach($php_directive_snippets as $php_directive_snippet){
                            $php_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$php_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$php_directive_snippet['snippet'].'</pre></a> ';
                        }
                }
                if($php_directive_snippets_txt == '') $php_directive_snippets_txt = '------';
                $app->tpl->setVar("php_directive_snippets_txt",$php_directive_snippets_txt);
                if($server_type == 'apache'){
                    $apache_directive_snippets = $app->db->queryAllRecords("SELECT * FROM directive_snippets WHERE type = 'apache' AND active = 'y'");
                    $apache_directive_snippets_txt = '';
                    if(is_array($apache_directive_snippets) && !empty($apache_directive_snippets)){
                            foreach($apache_directive_snippets as $apache_directive_snippet){
                                $apache_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$apache_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$apache_directive_snippet['snippet'].'</pre></a> ';
                            }
                    }
                    if($apache_directive_snippets_txt == '') $apache_directive_snippets_txt = '------';
                    $app->tpl->setVar("apache_directive_snippets_txt",$apache_directive_snippets_txt);
                }
                if($server_type == 'nginx'){
                    $nginx_directive_snippets = $app->db->queryAllRecords("SELECT * FROM directive_snippets WHERE type = 'nginx' AND active = 'y'");
                    $nginx_directive_snippets_txt = '';
                    if(is_array($nginx_directive_snippets) && !empty($nginx_directive_snippets)){
                            foreach($nginx_directive_snippets as $nginx_directive_snippet){
                                $nginx_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$nginx_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$nginx_directive_snippet['snippet'].'</pre></a> ';
                            }
                    }
                    if($nginx_directive_snippets_txt == '') $nginx_directive_snippets_txt = '------';
                    $app->tpl->setVar("nginx_directive_snippets_txt",$nginx_directive_snippets_txt);
                }
                $proxy_directive_snippets = $app->db->queryAllRecords("SELECT * FROM directive_snippets WHERE type = 'proxy' AND active = 'y'");
                $proxy_directive_snippets_txt = '';
                if(is_array($proxy_directive_snippets) && !empty($proxy_directive_snippets)){
                        foreach($proxy_directive_snippets as $proxy_directive_snippet){
                            $proxy_directive_snippets_txt .= '<a href="javascript:void(0);" class="addPlaceholderContent">['.$proxy_directive_snippet['name'].']<pre class="addPlaceholderContent" style="display:none;">'.$proxy_directive_snippet['snippet'].'</pre></a> ';
                        }
                }
                if($proxy_directive_snippets_txt == '') $proxy_directive_snippets_txt = '------';
                $app->tpl->setVar("proxy_directive_snippets_txt",$proxy_directive_snippets_txt);
            }
            
         //* Admin: If the logged in user is admin
      } else {
@@ -363,6 +410,10 @@
            if(in_array($check_folder, $forbidden_folders)) {
                $app->tform->errorMessage .= $app->tform->lng("web_folder_invalid_txt")."<br>";
            }
         // vhostsubdomains do not have a quota of their own
         $this->dataRecord["hd_quota"] = 0;
            // check for duplicate folder usage
         /*
            $check = $app->db->queryOneRecord("SELECT COUNT(*) as `cnt` FROM `web_domain` WHERE `type` = 'vhostsubdomain' AND `parent_domain_id` = '" . $app->functions->intval($this->dataRecord['parent_domain_id']) . "' AND `web_folder` = '" . $app->db->quote($this->dataRecord['web_folder']) . "' AND `domain_id` != '" . $app->functions->intval($this->id) . "'");
@@ -384,26 +435,10 @@
            if($client['limit_perl'] != 'y') $this->dataRecord['perl'] = '-';
            if($client['limit_ruby'] != 'y') $this->dataRecord['ruby'] = '-';
            if($client['limit_python'] != 'y') $this->dataRecord['python'] = '-';
            if($client['force_suexec'] != 'n') $this->dataRecord['suexec'] = '-';
            if($client['force_suexec'] != 'n') $this->dataRecord['suexec'] = 'y';
            if($client['limit_hterror'] != 'y') $this->dataRecord['errordocs'] = '-';
            if($client['limit_wildcard'] != 'y' && $this->dataRecord['subdomain'] == '*') $this->dataRecord['subdomain'] = '-';
            if($client['limit_ssl'] != 'y') $this->dataRecord['ssl'] = '-';
         //* Check the website quota of the client
         if(isset($_POST["hd_quota"]) && $client["limit_web_quota"] >= 0) {
            $tmp = $app->db->queryOneRecord("SELECT sum(hd_quota) as webquota FROM web_domain WHERE domain_id != ".$app->functions->intval($this->id)." AND ".$app->tform->getAuthSQL('u'));
            $webquota = $tmp["webquota"];
            $new_web_quota = $app->functions->intval($this->dataRecord["hd_quota"]);
            if(($webquota + $new_web_quota > $client["limit_web_quota"]) || ($new_web_quota < 0 && $client["limit_web_quota"] >= 0)) {
               $max_free_quota = floor($client["limit_web_quota"] - $webquota);
               if($max_free_quota < 0) $max_free_quota = 0;
               $app->tform->errorMessage .= $app->tform->lng("limit_web_quota_free_txt").": ".$max_free_quota." MB<br>";
               // Set the quota field to the max free space
               $this->dataRecord["hd_quota"] = $max_free_quota;
            }
            unset($tmp);
            unset($tmp_quota);
         }
         //* Check the traffic quota of the client
         if(isset($_POST["traffic_quota"]) && $client["limit_traffic_quota"] > 0) {
@@ -424,22 +459,6 @@
         if($client['parent_client_id'] > 0) {
            // Get the limits of the reseller
            $reseller = $app->db->queryOneRecord("SELECT limit_traffic_quota, limit_web_subdomain, default_webserver, limit_web_quota FROM client WHERE client_id = ".$client['parent_client_id']);
            //* Check the website quota of the client
            if(isset($_POST["hd_quota"]) && $reseller["limit_web_quota"] >= 0) {
               $tmp = $app->db->queryOneRecord("SELECT sum(hd_quota) as webquota FROM web_domain WHERE domain_id != ".$app->functions->intval($this->id)." AND ".$app->tform->getAuthSQL('u'));
               $webquota = $tmp["webquota"];
               $new_web_quota = $app->functions->intval($this->dataRecord["hd_quota"]);
               if(($webquota + $new_web_quota > $reseller["limit_web_quota"]) || ($new_web_quota < 0 && $reseller["limit_web_quota"] >= 0)) {
                  $max_free_quota = floor($reseller["limit_web_quota"] - $webquota);
                  if($max_free_quota < 0) $max_free_quota = 0;
                  $app->tform->errorMessage .= $app->tform->lng("limit_web_quota_free_txt").": ".$max_free_quota." MB<br>";
                  // Set the quota field to the max free space
                  $this->dataRecord["hd_quota"] = $max_free_quota;
               }
               unset($tmp);
               unset($tmp_quota);
            }
            //* Check the traffic quota of the client
            if(isset($_POST["traffic_quota"]) && $reseller["limit_traffic_quota"] > 0) {
@@ -580,4 +599,4 @@
$page = new page_action;
$page->onLoad();
?>
?>