mirror of
https://github.com/tuxis-ie/nsedit.git
synced 2025-04-20 20:13:40 +03:00
Merge pull request #30 from tuxis-ie/fix-issue15
Get the nameservers from the template, if any. If we don't have nameserv...
This commit is contained in:
commit
950a233e85
2 changed files with 56 additions and 2 deletions
36
index.php
36
index.php
|
@ -436,7 +436,23 @@ $(document).ready(function () {
|
||||||
create: true,
|
create: true,
|
||||||
list: false,
|
list: false,
|
||||||
edit: false,
|
edit: false,
|
||||||
defaultValue: '<?php echo $defaults['primaryns']; ?>',
|
input: function(data) {
|
||||||
|
var $template = data.form.find('#Edit-template');
|
||||||
|
var $elem = $('<input type="text" name="nameserver1" />');
|
||||||
|
$elem.val(<?php echo "'".$defaults['primaryns']."'"; ?>);
|
||||||
|
$template.change(function() {
|
||||||
|
$.get('zones.php?action=gettemplatenameservers&template='+$template.val()+'&prisec=pri', function(getdata) {
|
||||||
|
if (getdata != "") {
|
||||||
|
$elem.val(getdata);
|
||||||
|
$elem.attr('readonly', true);
|
||||||
|
} else {
|
||||||
|
$elem.val(<?php echo "'".$defaults['primaryns']."'"; ?>);
|
||||||
|
$elem.attr('readonly', false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
return $elem;
|
||||||
|
},
|
||||||
inputClass: 'nameserver nameserver1'
|
inputClass: 'nameserver nameserver1'
|
||||||
},
|
},
|
||||||
nameserver2: {
|
nameserver2: {
|
||||||
|
@ -444,7 +460,23 @@ $(document).ready(function () {
|
||||||
create: true,
|
create: true,
|
||||||
list: false,
|
list: false,
|
||||||
edit: false,
|
edit: false,
|
||||||
defaultValue: '<?php echo $defaults['secondaryns']; ?>',
|
input: function(data) {
|
||||||
|
var $template = data.form.find('#Edit-template');
|
||||||
|
var $elem = $('<input type="text" name="nameserver2" />');
|
||||||
|
$elem.val(<?php echo "'".$defaults['secondaryns']."'"; ?>);
|
||||||
|
$template.change(function() {
|
||||||
|
$.get('zones.php?action=gettemplatenameservers&template='+$template+'&prisec=sec', function(getdata) {
|
||||||
|
if (getdata != "") {
|
||||||
|
$elem.val(getdata);
|
||||||
|
$elem.attr('readonly', true);
|
||||||
|
} else {
|
||||||
|
$elem.val(<?php echo "'".$defaults['secondaryns']."'"; ?>);
|
||||||
|
$elem.attr('readonly', false);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
return $elem;
|
||||||
|
},
|
||||||
inputClass: 'nameserver nameserver2'
|
inputClass: 'nameserver nameserver2'
|
||||||
},
|
},
|
||||||
serial: {
|
serial: {
|
||||||
|
|
22
zones.php
22
zones.php
|
@ -498,6 +498,9 @@ case "create":
|
||||||
if ($template['name'] !== $_POST['template']) continue;
|
if ($template['name'] !== $_POST['template']) continue;
|
||||||
|
|
||||||
foreach ($template['records'] as $record) {
|
foreach ($template['records'] as $record) {
|
||||||
|
if ($record['type'] == 'NS' and array_search($record['content'], $nameservers) !== FALSE) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if (isset($record['label'])) {
|
if (isset($record['label'])) {
|
||||||
$record['name'] = $record['label'];
|
$record['name'] = $record['label'];
|
||||||
unset($record['label']);
|
unset($record['label']);
|
||||||
|
@ -628,6 +631,25 @@ case "export":
|
||||||
jtable_respond($export, 'single');
|
jtable_respond($export, 'single');
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case "gettemplatenameservers":
|
||||||
|
$ret = array();
|
||||||
|
$type = $_GET['prisec'];
|
||||||
|
|
||||||
|
foreach (user_template_list() as $template) {
|
||||||
|
if ($template['name'] !== $_GET['template']) continue;
|
||||||
|
$rc = 0;
|
||||||
|
foreach ($template['records'] as $record) {
|
||||||
|
if ($record['type'] == "NS") {
|
||||||
|
if (($type == 'pri' && $rc == 0) or ($type == 'sec' && $rc == 1)) {
|
||||||
|
echo $record['content'];
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
$rc++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
echo "";
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
jtable_respond(null, 'error', 'No such action');
|
jtable_respond(null, 'error', 'No such action');
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Add table
Reference in a new issue