Commit 2cb1c4bd authored by Ad Schellevis's avatar Ad Schellevis Committed by Franco Fichtner

(legacy) refactor services_rfc2136.php

(cherry picked from commit 43b8ef32)
parent 447bb4f5
......@@ -38,97 +38,120 @@ if (!isset($config['dnsupdates']['dnsupdate'])) {
$a_rfc2136 = &$config['dnsupdates']['dnsupdate'];
if ($_GET['act'] == "del") {
unset($a_rfc2136[$_GET['id']]);
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['act']) && $_POST['act'] == "del" && isset($_POST['id'])) {
if (!empty($a_rfc2136[$_POST['id']])) {
unset($a_rfc2136[$_POST['id']]);
write_config();
header("Location: services_rfc2136.php");
configd_run('dyndns reload', true);
}
exit;
} elseif (isset($_POST['act']) && $_POST['act'] == "toggle" && isset($_POST['id'])) {
if (!empty($a_rfc2136[$_POST['id']])) {
if (!empty($a_rfc2136[$_POST['id']]['enable'])) {
$a_rfc2136[$_POST['id']]['enable'] = false;
} else {
$a_rfc2136[$_POST['id']]['enable'] = true;
}
write_config();
configd_run('dyndns reload', true);
}
exit;
}
}
include("head.inc");
include("head.inc");
legacy_html_escape_form_data($a_rfc2136);
$main_buttons = array(
array('label' => gettext('Add'), 'href' => 'services_rfc2136_edit.php'),
);
?>
<body>
<?php include("fbegin.inc"); ?>
<script type="text/javascript">
$( document ).ready(function() {
// delete service action
$(".act_delete_service").click(function(event){
event.preventDefault();
var id = $(this).data("id");
BootstrapDialog.show({
type:BootstrapDialog.TYPE_DANGER,
title: "<?= gettext("RFC 2136");?>",
message: "<?=gettext("Do you really want to delete this client?");?>",
buttons: [{
label: "<?= gettext("No");?>",
action: function(dialogRef) {
dialogRef.close();
}}, {
label: "<?= gettext("Yes");?>",
action: function(dialogRef) {
$.post(window.location, {act: 'del', id:id}, function(data) {
location.reload();
});
}
}]
});
});
// link toggle buttons
$(".act_toggle").click(function(){
$.post(window.location, {act: 'toggle', id:$(this).data("id")}, function(data) {
location.reload();
});
});
});
</script>
<section class="page-content-main">
<?php include("fbegin.inc"); ?>
<section class="page-content-main">
<div class="container-fluid">
<div class="row">
<?php if (isset($input_errors) && count($input_errors) > 0) print_input_errors($input_errors); ?>
<section class="col-xs-12">
<div class="tab-content content-box col-xs-12">
<form action="services_rfc2136.php" method="post" name="iform" id="iform">
<form method="post" name="iform" id="iform">
<div class="table-responsive">
<table class="table table-striped">
<thead>
<tr>
<td width="5%" class="listhdrr"><?=gettext("If");?></td>
<td width="15%" class="listhdrr"><?=gettext("Server");?></td>
<td width="20%" class="listhdrr"><?=gettext("Hostname");?></td>
<td width="25%" class="listhdrr"><?=gettext("Cached IP");?></td>
<td width="25%" class="listhdr"><?=gettext("Description");?></td>
<td width="10%" class="list"></td>
<th><?=gettext("If");?></th>
<th><?=gettext("Server");?></th>
<th><?=gettext("Hostname");?></th>
<th><?=gettext("Cached IP");?></th>
<th><?=gettext("Description");?></th>
<th></th>
</tr>
<?php $i = 0; foreach ($a_rfc2136 as $rfc2136): ?>
<tr ondblclick="document.location='services_rfc2136_edit.php?id=<?=$i;?>'">
<td class="listlr">
<?php
$iflist = get_configured_interface_with_descr();
foreach ($iflist as $if => $ifdesc) {
if ($rfc2136['interface'] == $if) {
if (!isset($rfc2136['enable']))
echo "<span class=\"text-muted\">{$ifdesc}</span>";
else
echo "{$ifdesc}";
break;
}
}
?>
</td>
<td class="listr">
<?php
if (!isset($rfc2136['enable']))
echo "<span class=\"text-muted\">" . htmlspecialchars($rfc2136['server']) . "</span>";
else
echo htmlspecialchars($rfc2136['server']);
?>
</td>
<td class="listr">
<?php
if (!isset($rfc2136['enable']))
echo "<span class=\"text-muted\">" . htmlspecialchars($rfc2136['host']) . "</span>";
else
echo htmlspecialchars($rfc2136['host']);
?>
</thead>
<tbody>
<?php
$i = 0;
foreach ($a_rfc2136 as $rfc2136): ?>
<tr>
<td>
<a href="#" class="act_toggle" data-id="<?=$i;?>" data-toggle="tooltip" title="<?=(!empty($rfc2136['enable'])) ? gettext("disable") : gettext("enable");?>">
<span class="glyphicon glyphicon-play <?=(!empty($rfc2136['enable'])) ? "text-success" : "text-muted";?>"></span>
</a>
<?=!empty($config['interfaces'][$rfc2136['interface']]['descr']) ? $config['interfaces'][$rfc2136['interface']]['descr'] : strtoupper($rfc2136['interface']);?>
</td>
<td class="listr">
<?php
<td><?=$rfc2136['server'];?></td>
<td><?=$rfc2136['host'];?></td>
<td>
<?php
$filename = "/conf/dyndns_{$rfc2136['interface']}_rfc2136_" . escapeshellarg($rfc2136['host']) . "_{$rfc2136['server']}.cache";
if (file_exists($filename)) {
if (file_exists($filename) && !empty($rfc2136['enable'])) {
echo "IPv4: ";
if (isset($rfc2136['usepublicip']))
if (isset($rfc2136['usepublicip'])) {
$ipaddr = dyndnsCheckIP($rfc2136['interface']);
else
} else {
$ipaddr = get_interface_ip($rfc2136['interface']);
}
$cached_ip_s = explode("|", file_get_contents($filename));
$cached_ip = $cached_ip_s[0];
if ($ipaddr <> $cached_ip)
if ($ipaddr <> $cached_ip) {
echo "<font color='red'>";
else
} else {
echo "<font color='green'>";
}
echo htmlspecialchars($cached_ip);
echo "</font>";
} else {
......@@ -140,45 +163,35 @@ $main_buttons = array(
$ipaddr = get_interface_ipv6($rfc2136['interface']);
$cached_ip_s = explode("|", file_get_contents("{$filename}.ipv6"));
$cached_ip = $cached_ip_s[0];
if ($ipaddr <> $cached_ip)
if ($ipaddr <> $cached_ip) {
echo "<font color='red'>";
else
} else {
echo "<font color='green'>";
}
echo htmlspecialchars($cached_ip);
echo "</font>";
} else {
echo "IPv6: N/A";
}
?>
</td>
<td class="listbg">
<?php
if (!isset($rfc2136['enable']))
echo "<span class=\"text-muted\">" . htmlspecialchars($rfc2136['descr']) . "</span>";
else
echo htmlspecialchars($rfc2136['descr']);
?>
}?>
</td>
<td valign="middle" class="list nowrap">
<td><?=$rfc2136['descr'];?></td>
<td>
<a href="services_rfc2136_edit.php?id=<?=$i;?>">
<button type="button" class="btn btn-xs btn-default"><span class="fa fa-pencil"></span></button>
</a>
<a href="services_rfc2136.php?act=del&amp;id=<?=$i;?>" onclick="return confirm('<?=gettext("Do you really want to delete this client?");?>')">
<button type="button" class="btn btn-xs btn-default"><span class="fa fa-trash-o"></span></button>
</a>
<a href="#" data-id="<?=$i;?>" class="act_delete_service"><button type="button" class="btn btn-xs btn-default"><span class="fa fa-trash text-muted"></span></button></a>
</td>
</tr>
<?php $i++; endforeach; ?>
<?php
$i++;
endforeach; ?>
</tbody>
</table>
</div>
</form>
</div>
</section>
</div>
</div>
</section>
<?php include("foot.inc"); ?>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment