tbrehm
2009-07-09 0fd51fc5d7a9d16264dc0f4c8cb0ef6923649f03
Fixed: FS#786 - Client with enables client module cannot choose a client when adding a dns zone
Fixed: FS#787 - A sub-client can see all the clients on the system in the client drop down list
5 files modified
61 ■■■■ changed files
interface/web/dns/dns_soa_edit.php 20 ●●●●● patch | view | raw | blame | history
interface/web/dns/dns_wizard.php 23 ●●●●● patch | view | raw | blame | history
interface/web/dns/templates/dns_wizard.htm 8 ●●●●● patch | view | raw | blame | history
interface/web/mail/mail_domain_edit.php 4 ●●●● patch | view | raw | blame | history
interface/web/sites/web_domain_edit.php 6 ●●●● patch | view | raw | blame | history
interface/web/dns/dns_soa_edit.php
@@ -76,7 +76,7 @@
        global $app, $conf;
        
        // If user is admin, we will allow him to select to whom this record belongs
        if($_SESSION["s"]["user"]["typ"] == 'admin' || $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
        if($_SESSION["s"]["user"]["typ"] == 'admin') {
            // Getting Domains of the user
            $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0";
            $clients = $app->db->queryAllRecords($sql);
@@ -89,6 +89,24 @@
                }
            }
        $app->tpl->setVar("client_group_id",$client_select);
        } else if($app->auth->has_clients($_SESSION['s']['user']['userid'])) {
            // Get the limits of the client
            $client_group_id = $_SESSION["s"]["user"]["default_group"];
            $client = $app->db->queryOneRecord("SELECT client.client_id, client.contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
            // Fill the client select field
            $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id'];
            $clients = $app->db->queryAllRecords($sql);
            $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>';
            if(is_array($clients)) {
                foreach( $clients as $client) {
                    $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':'';
                    $client_select .= "<option value='$client[groupid]' $selected>$client[name]</option>\r\n";
                }
            }
            $app->tpl->setVar("client_group_id",$client_select);
        }
        
        parent::onShowEnd();
interface/web/dns/dns_wizard.php
@@ -93,9 +93,30 @@
    }
    $app->tpl->setVar("client_group_id",$client_select);
}
if ($_SESSION["s"]["user"]["typ"] != 'admin' && $app->auth->has_clients($_SESSION['s']['user']['userid'])) {
    // Get the limits of the client
    $client_group_id = $_SESSION["s"]["user"]["default_group"];
    $client = $app->db->queryOneRecord("SELECT client.client_id, contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
    // load the list of clients
    $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id'];
    $clients = $app->db->queryAllRecords($sql);
    $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>';
    if(is_array($clients)) {
        foreach( $clients as $client) {
            $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':'';
            $client_select .= "<option value='$client[groupid]' $selected>$client[name]</option>\r\n";
        }
    }
    $app->tpl->setVar("client_group_id",$client_select);
}
$template_record = $app->db->queryOneRecord("SELECT * FROM dns_template WHERE template_id = '$template_id'");
$fields = explode(',',$template_record['fields']);
if(is_array($fields)) {
interface/web/dns/templates/dns_wizard.htm
@@ -29,6 +29,14 @@
                </select>
      </div>
      </tmpl_if>
      <tmpl_if name="is_reseller">
      <div class="ctrlHolder">
          <label for="client_group_id">{tmpl_var name='client_txt'}</label>
        <select name="client_group_id" id="client_group_id" class="selectInput">
                    {tmpl_var name='client_group_id'}
                </select>
      </div>
      </tmpl_if>
          <tmpl_if name="DOMAIN_VISIBLE">
          <div class="ctrlHolder">
              <label for="domain">{tmpl_var name='domain_txt'}</label>
interface/web/mail/mail_domain_edit.php
@@ -98,7 +98,7 @@
            // Get the limits of the client
            $client_group_id = $_SESSION["s"]["user"]["default_group"];
            $client = $app->db->queryOneRecord("SELECT client.client_id, limit_web_domain, default_webserver 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, contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
            
            // Set the webserver to the default server of the client
            $tmp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = $client[default_webserver]");
@@ -108,7 +108,7 @@
            // Fill the client select field
            $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id'];
            $clients = $app->db->queryAllRecords($sql);
            $client_select = '';
            $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>';
            if(is_array($clients)) {
                foreach( $clients as $client) {
                    $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':'';
interface/web/sites/web_domain_edit.php
@@ -109,7 +109,7 @@
            
            // Get the limits of the client
            $client_group_id = $_SESSION["s"]["user"]["default_group"];
            $client = $app->db->queryOneRecord("SELECT client.client_id, limit_web_domain, default_webserver 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, limit_web_domain, default_webserver, client.contact_name FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
            
            // Set the webserver to the default server of the client
            $tmp = $app->db->queryOneRecord("SELECT server_name FROM server WHERE server_id = $client[default_webserver]");
@@ -119,7 +119,7 @@
            // Fill the client select field
            $sql = "SELECT groupid, name FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id'];
            $clients = $app->db->queryAllRecords($sql);
            $client_select = '';
            $client_select = '<option value="'.$client['client_id'].'">'.$client['contact_name'].'</option>';
            if(is_array($clients)) {
                foreach( $clients as $client) {
                    $selected = @($client["groupid"] == $this->dataRecord["sys_groupid"])?'SELECTED':'';
@@ -207,7 +207,7 @@
        if($_SESSION["s"]["user"]["typ"] != 'admin') {
            // Get the limits of the client
            $client_group_id = $_SESSION["s"]["user"]["default_group"];
            $client = $app->db->queryOneRecord("SELECT limit_web_domain, default_webserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
            $client = $app->db->queryOneRecord("SELECT limit_web_domain, default_webserver, parent_client_id FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
            
            // When the record is updated
            if($this->id > 0) {