Marius Cramer
2013-10-14 d9bcf68e395d6156645a7974b1a992aa6e6c00aa
interface/web/dns/dns_wizard.php
@@ -42,12 +42,12 @@
$app->load_language_file('/web/dns/lib/lang/'.$_SESSION['s']['language'].'_dns_wizard.lng');
// import variables
$template_id = (isset($_POST['template_id']))?intval($_POST['template_id']):0;
$sys_groupid = (isset($_POST['client_group_id']))?intval($_POST['client_group_id']):0;
$template_id = (isset($_POST['template_id']))?$app->functions->intval($_POST['template_id']):0;
$sys_groupid = (isset($_POST['client_group_id']))?$app->functions->intval($_POST['client_group_id']):0;
// get the correct server_id
if($_SESSION['s']['user']['typ'] == 'admin') {
   $server_id = (isset($_POST['server_id']))?intval($_POST['server_id']):1;
   $server_id = (isset($_POST['server_id']))?$app->functions->intval($_POST['server_id']):1;
} else {
   $client_group_id = $_SESSION["s"]["user"]["default_group"];
   $client = $app->db->queryOneRecord("SELECT default_dnsserver FROM sys_group, client WHERE sys_group.client_id = client.client_id and sys_group.groupid = $client_group_id");
@@ -81,14 +81,14 @@
   $app->tpl->setVar("server_id",$server_id_option);
   
   // load the list of clients
   $sql = "SELECT sys_group.groupid, sys_group.name, CONCAT(client.company_name,' :: ',client.contact_name) as contactname FROM sys_group, client WHERE sys_group.client_id = client.client_id AND sys_group.client_id > 0 ORDER BY sys_group.name";
   $sql = "SELECT sys_group.groupid, sys_group.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 FROM sys_group, client WHERE sys_group.client_id = client.client_id AND sys_group.client_id > 0 ORDER BY sys_group.name";
   $clients = $app->db->queryAllRecords($sql);
   $client_select = '';
   if($_SESSION["s"]["user"]["typ"] == 'admin') $client_select .= "<option value='0'></option>";
   if(is_array($clients)) {
      foreach( $clients as $client) {
         $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':'';
         $client_select .= "<option value='$client[groupid]' $selected>$client[name] :: $client[contactname]</option>\r\n";
         $client_select .= "<option value='$client[groupid]' $selected>$client[contactname]</option>\r\n";
      }
   }
@@ -99,18 +99,18 @@
   
   // 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, CONCAT(client.company_name,' :: ',client.contact_name) as contactname, sys_group.name 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.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 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 sys_group.groupid, sys_group.name, CONCAT(client.company_name,' :: ',client.contact_name) as contactname FROM sys_group, client WHERE sys_group.client_id = client.client_id AND client.parent_client_id = ".$client['client_id'];
   $sql = "SELECT sys_group.groupid, sys_group.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 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);
   $tmp = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = ".$client['client_id']);
   $client_select = '<option value="'.$tmp['groupid'].'">'.$client['name'].' :: '.$client['contactname'].'</option>';
   $client_select = '<option value="'.$tmp['groupid'].'">'.$client['contactname'].'</option>';
   if(is_array($clients)) {
      foreach( $clients as $client) {
         $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':'';
         $client_select .= "<option value='$client[groupid]' $selected>$client[name] :: $client[contactname]</option>\r\n";
         $client_select .= "<option value='$client[groupid]' $selected>$client[contactname]</option>\r\n";
      }
   }
@@ -132,22 +132,44 @@
   
   $error = '';
   
   // apply filters
   if(isset($_POST['domain']) && $_POST['domain'] != ''){
      $_POST['domain'] = $app->functions->idn_encode($_POST['domain']);
      $_POST['domain'] = strtolower($_POST['domain']);
   }
   if(isset($_POST['ns1']) && $_POST['ns1'] != ''){
      $_POST['ns1'] = $app->functions->idn_encode($_POST['ns1']);
      $_POST['ns1'] = strtolower($_POST['ns1']);
   }
   if(isset($_POST['ns2']) && $_POST['ns2'] != ''){
      $_POST['ns2'] = $app->functions->idn_encode($_POST['ns2']);
      $_POST['ns2'] = strtolower($_POST['ns2']);
   }
   if(isset($_POST['email']) && $_POST['email'] != ''){
      $_POST['email'] = $app->functions->idn_encode($_POST['email']);
      $_POST['email'] = strtolower($_POST['email']);
   }
   if(isset($_POST['domain']) && $_POST['domain'] == '') $error .= $app->lng('error_domain_empty').'<br />';
   elseif(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
   if(isset($_POST['ip']) && $_POST['ip'] == '') $error .= $app->lng('error_ip_empty').'<br />';
   if(isset($_POST['ns1']) && $_POST['ns1'] == '') $error .= $app->lng('error_ns1_empty').'<br />';
   elseif(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
   if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />';
   elseif(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
   if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />';
   elseif(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z0-9\-]{2,30}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
   
   if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9\-]{2,30}[\.]{0,1}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
   if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}[\.]{0,1}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
   if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z0-9]{2,30}[\.]{0,1}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
   if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z0-9\-]{2,30}$/i',$_POST['email'])) $error .= $app->lng('error_email_regex').'<br />';
   // make sure that the record belongs to the clinet group and not the admin group when a dmin inserts it
   // make sure that the record belongs to the client group and not the admin group when admin inserts it
   if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($_POST['client_group_id'])) {
      $sys_groupid = intval($_POST['client_group_id']);
      $sys_groupid = $app->functions->intval($_POST['client_group_id']);
   } elseif($app->auth->has_clients($_SESSION['s']['user']['userid']) && isset($_POST['client_group_id'])) {
      $sys_groupid = intval($_POST['client_group_id']);
      $sys_groupid = $app->functions->intval($_POST['client_group_id']);
   } else {
      $sys_groupid = $_SESSION["s"]["user"]["default_group"];
   }