Marius Cramer
2015-08-06 37b29231e47a0c4458dc1c15d98588f16f07e1e2
interface/web/dns/dns_wizard.php
@@ -147,7 +147,7 @@
   $options_dns_servers = "";
   foreach ($dns_servers as $dns_server) {
      $options_dns_servers .= "<option value='$dns_server[server_id]'>$dns_server[server_name]</option>";
      $options_dns_servers .= '<option value="'.$dns_server['server_id'].'"'.($_POST['server_id'] == $dns_server['server_id'] ? ' selected="selected"' : '').'>'.$dns_server['server_name'].'</option>';
   }
   $app->tpl->setVar("server_id", $options_dns_servers);
@@ -197,7 +197,10 @@
}
if($_POST['create'] == 1) {
   //* CSRF Check
   $app->auth->csrf_token_check();
   $error = '';
   if ($post_server_id)
@@ -335,11 +338,11 @@
            if($section == 'dns_records') {
               $parts = explode('|', $row);
               $dns_rr[] = array(
                  'name' => $app->db->quote($parts[1]),
                  'type' => $app->db->quote($parts[0]),
                  'data' => $app->db->quote($parts[2]),
                  'aux'  => $app->db->quote($parts[3]),
                  'ttl'  => $app->db->quote($parts[4])
                  'name' => $parts[1],
                  'type' => $parts[0],
                  'data' => $parts[2],
                  'aux'  => $parts[3],
                  'ttl'  => $parts[4]
               );
            }
         }
@@ -359,28 +362,60 @@
   if($error == '') {
      // Insert the soa record
      $sys_userid = $_SESSION['s']['user']['userid'];
      $origin = $app->db->quote($vars['origin']);
      $ns = $app->db->quote($vars['ns']);
      $mbox = $app->db->quote(str_replace('@', '.', $vars['mbox']));
      $refresh = $app->db->quote($vars['refresh']);
      $retry = $app->db->quote($vars['retry']);
      $expire = $app->db->quote($vars['expire']);
      $minimum = $app->db->quote($vars['minimum']);
      $ttl = $app->db->quote($vars['ttl']);
      $xfer = $app->db->quote($vars['xfer']);
      $also_notify = $app->db->quote($vars['also_notify']);
      $update_acl = $app->db->quote($vars['update_acl']);
      $origin = $vars['origin'];
      $ns = $vars['ns'];
      $mbox = str_replace('@', '.', $vars['mbox']);
      $refresh = $vars['refresh'];
      $retry = $vars['retry'];
      $expire = $vars['expire'];
      $minimum = $vars['minimum'];
      $ttl = $vars['ttl'];
      $xfer = $vars['xfer'];
      $also_notify = $vars['also_notify'];
      $update_acl = $vars['update_acl'];
      $serial = $app->validate_dns->increase_serial(0);
      $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `origin`, `ns`, `mbox`, `serial`, `refresh`, `retry`, `expire`, `minimum`, `ttl`, `active`, `xfer`, `also_notify`, `update_acl`) VALUES
      ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$origin', '$ns', '$mbox', '$serial', '$refresh', '$retry', '$expire', '$minimum', '$ttl', 'Y', '$xfer', '$also_notify', '$update_acl')";
      $insert_data = array(
         "sys_userid" => $sys_userid,
         "sys_groupid" => $sys_groupid,
         "sys_perm_user" => 'riud',
         "sys_perm_group" => 'riud',
         "sys_perm_other" => '',
         "server_id" => $server_id,
         "origin" => $origin,
         "ns" => $ns,
         "mbox" => $mbox,
         "serial" => $serial,
         "refresh" => $refresh,
         "retry" => $retry,
         "expire" => $expire,
         "minimum" => $minimum,
         "ttl" => $ttl,
         "active" => 'Y',
         "xfer" => $xfer,
         "also_notify" => $also_notify,
         "update_acl" => $update_acl
      );
      $dns_soa_id = $app->db->datalogInsert('dns_soa', $insert_data, 'id');
      // Insert the dns_rr records
      if(is_array($dns_rr) && $dns_soa_id > 0) {
         foreach($dns_rr as $rr) {
            $insert_data = "(`sys_userid`, `sys_groupid`, `sys_perm_user`, `sys_perm_group`, `sys_perm_other`, `server_id`, `zone`, `name`, `type`, `data`, `aux`, `ttl`, `active`) VALUES
            ('$sys_userid', '$sys_groupid', 'riud', 'riud', '', '$server_id', '$dns_soa_id', '$rr[name]', '$rr[type]', '$rr[data]', '$rr[aux]', '$rr[ttl]', 'Y')";
            $insert_data = array(
               "sys_userid" => $sys_userid,
               "sys_groupid" => $sys_groupid,
               "sys_perm_user" => 'riud',
               "sys_perm_group" => 'riud',
               "sys_perm_other" => '',
               "server_id" => $server_id,
               "zone" => $dns_soa_id,
               "name" => $rr['name'],
               "type" => $rr['type'],
               "data" => $rr['data'],
               "aux" => $rr['aux'],
               "ttl" => $rr['ttl'],
               "active" => 'Y'
            );
            $dns_rr_id = $app->db->datalogInsert('dns_rr', $insert_data, 'id');
         }
      }
@@ -398,6 +433,11 @@
$app->tpl->setVar("title", 'DNS Wizard');
//* SET csrf token
$csrf_token = $app->auth->csrf_token_get('dns_wizard');
$app->tpl->setVar('_csrf_id',$csrf_token['csrf_id']);
$app->tpl->setVar('_csrf_key',$csrf_token['csrf_key']);
$lng_file = 'lib/lang/'.$_SESSION['s']['language'].'_dns_wizard.lng';
include $lng_file;
$app->tpl->setVar($wb);