Commit 59504c5c authored by Ad Schellevis's avatar Ad Schellevis

(legacy) refactor services_igmpproxy.php

parent 3e601eb3
<?php <?php
/* /*
Copyright (C) 2014-2015 Deciso B.V. Copyright (C) 2014-2016 Deciso B.V.
Copyright (C) 2009 Ermal Luçi Copyright (C) 2009 Ermal Luçi
Copyright (C) 2004 Scott Ullrich Copyright (C) 2004 Scott Ullrich
Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>. Copyright (C) 2003-2004 Manuel Kasper <mk@neon1.net>.
...@@ -33,116 +33,119 @@ require_once("guiconfig.inc"); ...@@ -33,116 +33,119 @@ require_once("guiconfig.inc");
require_once("interfaces.inc"); require_once("interfaces.inc");
require_once("services.inc"); require_once("services.inc");
if (!isset($config['igmpproxy']['igmpentry'])) if (!isset($config['igmpproxy']['igmpentry'])) {
$config['igmpproxy']['igmpentry'] = array(); $config['igmpproxy']['igmpentry'] = array();
}
//igmpproxy_sort();
$a_igmpproxy = &$config['igmpproxy']['igmpentry']; $a_igmpproxy = &$config['igmpproxy']['igmpentry'];
if ($_POST) { if ($_SERVER['REQUEST_METHOD'] === 'POST') {
if (isset($_POST['act']) && $_POST['act'] == "del") {
$pconfig = $_POST; if (isset($_POST['id']) && !empty($a_igmpproxy[$_POST['id']])){
unset($a_igmpproxy[$_POST['id']]);
$retval = 0;
/* reload all components that use igmpproxy */
$retval = services_igmpproxy_configure();
if(stristr($retval, "error") <> true)
$savemsg = get_std_save_message();
else
$savemsg = $retval;
clear_subsystem_dirty('igmpproxy');
}
if ($_GET['act'] == "del") {
if ($a_igmpproxy[$_GET['id']]) {
unset($a_igmpproxy[$_GET['id']]);
write_config(); write_config();
mark_subsystem_dirty('igmpproxy'); mark_subsystem_dirty('igmpproxy');
}
exit;
} else {
/* reload all components that use igmpproxy */
services_igmpproxy_configure();
clear_subsystem_dirty('igmpproxy');
header("Location: services_igmpproxy.php"); header("Location: services_igmpproxy.php");
exit; exit;
} }
} }
include("head.inc");
include("head.inc");
legacy_html_escape_form_data($a_igmpproxy);
$main_buttons = array( $main_buttons = array(
array('label'=>gettext("add a new igmpentry"), 'href'=>'services_igmpproxy_edit.php'), array('label'=>gettext("add a new igmpentry"), 'href'=>'services_igmpproxy_edit.php'),
); );
?> ?>
<body> <body>
<script type="text/javascript">
$( document ).ready(function() {
// delete host action
$(".act_delete_entry").click(function(event){
event.preventDefault();
var id = $(this).data("id");
// delete single
BootstrapDialog.show({
type:BootstrapDialog.TYPE_DANGER,
title: "<?= gettext("IGMP Proxy");?>",
message: "<?=gettext("Do you really want to delete this igmp entry? All elements that still use it will become invalid (e.g. filter rules)!");?>",
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();
});
}
}]
});
});
});
//]]>
</script>
<?php include("fbegin.inc"); ?> <?php include("fbegin.inc"); ?>
<section class="page-content-main"> <section class="page-content-main">
<div class="container-fluid"> <div class="container-fluid">
<div class="row"> <div class="row">
<?php if (isset($savemsg)) print_info_box($savemsg); ?>
<?php if (is_subsystem_dirty('igmpproxy')): ?><br/> <?php if (is_subsystem_dirty('igmpproxy')): ?><br/>
<?php print_info_box_apply(gettext("The IGMP entry list has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect."));?> <?php print_info_box_apply(gettext("The IGMP entry list has been changed") . ".<br />" . gettext("You must apply the changes in order for them to take effect."));?>
<?php endif; ?> <?php endif; ?>
<section class="col-xs-12"> <section class="col-xs-12">
<div class="content-box"> <div class="content-box">
<form method="post" name="iform" id="iform">
<form action="services_igmpproxy.php" method="post" name="iform" id="iform">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped table-sort"> <table class="table table-striped">
<thead>
<tr> <tr>
<td width="15%" class="listhdrr"><?=gettext("Name");?></td> <td><?=gettext("Name");?></td>
<td width="10%" class="listhdrr"><?=gettext("Type");?></td> <td><?=gettext("Type");?></td>
<td width="25%" class="listhdrr"><?=gettext("Values");?></td> <td><?=gettext("Values");?></td>
<td width="20%" class="listhdr"><?=gettext("Description");?></td> <td><?=gettext("Description");?></td>
<td width="10%" class="list"> <td>
</tr> </tr>
<?php $i = 0; foreach ($a_igmpproxy as $igmpentry): ?> </thead>
<tbody>
<?php
$i = 0;
foreach ($a_igmpproxy as $igmpentry): ?>
<tr> <tr>
<td class="listlr" ondblclick="document.location='services_igmpproxy_edit.php?id=<?=$i;?>';"> <td>
<?=htmlspecialchars(convert_friendly_interface_to_friendly_descr($igmpentry['ifname']));?> <?=htmlspecialchars(convert_friendly_interface_to_friendly_descr($igmpentry['ifname']));?>
</td> </td>
<td class="listlr" ondblclick="document.location='services_igmpproxy_edit.php?id=<?=$i;?>';"> <td><?=$igmpentry['type'];?></td>
<?=htmlspecialchars($igmpentry['type']);?> <td>
</td> <?php
<td class="listr" ondblclick="document.location='services_igmpproxy_edit.php?id=<?=$i;?>';"> $addresses = implode(", ", array_slice(explode(" ", $igmpentry['address']), 0, 10));?>
<?php <?=$addresses;?> <?=count($addresses) < 10 ? "" : "...";?>
$addresses = implode(", ", array_slice(explode(" ", $igmpentry['address']), 0, 10));
echo $addresses;
if(count($addresses) < 10) {
echo " ";
} else {
echo "...";
}
?>
</td>
<td class="listbg" ondblclick="document.location='services_igmpproxy_edit.php?id=<?=$i;?>';">
<?=htmlspecialchars($igmpentry['descr']);?>&nbsp;
</td> </td>
<td valign="middle" class="list nowrap"> <td><?=$igmpentry['descr'];?></td>
<td>
<a href="services_igmpproxy_edit.php?id=<?=$i;?>" title="<?=gettext("edit igmpentry"); ?>" class="btn btn-default btn-xs"><span class="glyphicon glyphicon-pencil"></span></a> <a href="services_igmpproxy_edit.php?id=<?=$i;?>" title="<?=gettext("edit igmpentry"); ?>" class="btn btn-default btn-xs"><span class="glyphicon glyphicon-pencil"></span></a>
<a href="services_igmpproxy.php?act=del&amp;id=<?=$i;?>" onclick="return confirm('<?=gettext("Do you really want to delete this igmp entry? All elements that still use it will become invalid (e.g. filter rules)!");?>')" title="<?=gettext("delete igmpentry");?>" class="btn btn-default btn-xs"><span class="fa fa-trash text-muted"></span></a> <a href="#" data-id="<?=$i;?>" class="act_delete_entry"><button type="button" class="btn btn-xs btn-default"><span class="fa fa-trash text-muted"></span></button></a>
</td>
</tr>
<?php $i++; endforeach; ?>
<tr>
<td colspan="5" width="78%">
<br />
<input id="submit" name="submit" type="submit" class="btn btn-primary" value="<?=gettext("Save");?>" />
<br />
</td> </td>
</tr> </tr>
<?php
$i++;
endforeach; ?>
<tr> <tr>
<td class="tabcont" colspan="5"> <td class="tabcont" colspan="5">
<p><span class="vexpl"><span class="red"><strong><?=gettext("Note:");?><br /></strong></span><?=gettext("Please add the interface for upstream, the allowed subnets, and the downstream interfaces you would like the proxy to allow. Only one 'upstream' interface can be configured.");?></span></p> <p>
<span class="text-danger"><strong><?=gettext("Note:");?><br /></strong></span>
<?=gettext("Please add the interface for upstream, the allowed subnets, and the downstream interfaces you would like the proxy to allow. Only one 'upstream' interface can be configured.");?>
</p>
</td> </td>
</tr> </tr>
</tbody>
</table> </table>
</div> </div>
</form> </form>
...@@ -151,5 +154,4 @@ $main_buttons = array( ...@@ -151,5 +154,4 @@ $main_buttons = array(
</div> </div>
</div> </div>
</section> </section>
<?php include("foot.inc"); ?> <?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