moglia
2010-05-13 0110094b2d206e88dceb0cfe2bc4c85f2e826dda
interface/web/dns/dns_wizard.php
@@ -81,7 +81,7 @@
   $app->tpl->setVar("server_id",$server_id_option);
   
   // load the list of clients
   $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0";
   $sql = "SELECT groupid, name FROM sys_group WHERE client_id > 0 ORDER BY name";
   $clients = $app->db->queryAllRecords($sql);
   $client_select = '';
   if($_SESSION["s"]["user"]["typ"] == 'admin') $client_select .= "<option value='0'></option>";
@@ -105,7 +105,8 @@
   // 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>';
   $tmp = $app->db->queryOneRecord("SELECT groupid FROM sys_group WHERE client_id = ".$client['client_id']);
   $client_select = '<option value="'.$tmp['groupid'].'">'.$client['contact_name'].'</option>';
   if(is_array($clients)) {
      foreach( $clients as $client) {
         $selected = ($client["groupid"] == $sys_groupid)?'SELECTED':'';
@@ -137,6 +138,33 @@
   if(isset($_POST['ns2']) && $_POST['ns2'] == '') $error .= $app->lng('error_ns2_empty').'<br />';
   if(isset($_POST['email']) && $_POST['email'] == '') $error .= $app->lng('error_email_empty').'<br />';
   
   if(isset($_POST['domain']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['domain'])) $error .= $app->lng('error_domain_regex').'<br />';
   if(isset($_POST['ns1']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['ns1'])) $error .= $app->lng('error_ns1_regex').'<br />';
   if(isset($_POST['ns2']) && !preg_match('/^[\w\.\-]{2,64}\.[a-zA-Z]{2,10}[\.]{0,1}$/',$_POST['ns2'])) $error .= $app->lng('error_ns2_regex').'<br />';
   if(isset($_POST['email']) && !preg_match('/^\w+[\w.-]*\w+@\w+[\w.-]*\w+\.[a-z]{2,10}$/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
   if($_SESSION["s"]["user"]["typ"] == 'admin' && isset($_POST['client_group_id'])) {
      $sys_groupid = 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']);
   } else {
      $sys_groupid = $_SESSION["s"]["user"]["default_group"];
   }
   $tform_def_file = "form/dns_soa.tform.php";
   $app->uses('tform');
   $app->tform->loadFormDef($tform_def_file);
   if($_SESSION['s']['user']['typ'] != 'admin') {
      if(!$app->tform->checkClientLimit('limit_dns_zone')) {
         $error .= $app->tform->wordbook["limit_dns_zone_txt"];
      }
      if(!$app->tform->checkResellerLimit('limit_dns_zone')) {
         $error .= $app->tform->wordbook["limit_dns_zone_txt"];
      }
   }
   
   // replace template placeholders
   $tpl_content = $template_record['template'];