summaryrefslogtreecommitdiffstats
path: root/src/usr/local/www/firewall_rules.php
diff options
context:
space:
mode:
authorStephen Beaver <sbeaver@netgate.com>2016-03-14 15:21:51 -0400
committerStephen Beaver <sbeaver@netgate.com>2016-03-14 15:23:46 -0400
commit9ec9978267a5d1985d6da8ba35d52b7174239d2f (patch)
tree0c6bcb478ed6de541e927789fddfa1a09d053c9a /src/usr/local/www/firewall_rules.php
parente731dae0bda6af2b67d6327fb3e180d0c52a9665 (diff)
downloadpfsense-9ec9978267a5d1985d6da8ba35d52b7174239d2f.zip
pfsense-9ec9978267a5d1985d6da8ba35d52b7174239d2f.tar.gz
Fixed #5983
Added the ability to move multiple firewall rules via a "movre to here" icon (anchor)
Diffstat (limited to 'src/usr/local/www/firewall_rules.php')
-rw-r--r--src/usr/local/www/firewall_rules.php26
1 files changed, 25 insertions, 1 deletions
diff --git a/src/usr/local/www/firewall_rules.php b/src/usr/local/www/firewall_rules.php
index cd05fbf..2d16205 100644
--- a/src/usr/local/www/firewall_rules.php
+++ b/src/usr/local/www/firewall_rules.php
@@ -789,6 +789,7 @@ foreach ($a_filter as $filteri => $filterent):
</td>
<td class="action-icons">
<!-- <?=(isset($filterent['disabled']) ? 'enable' : 'disable')?> -->
+ <a class="fa fa-anchor icon-pointer" id="Xmove_<?=$filteri?>" title="<?=gettext("Move checked rules above this one")?>"></a>
<a href="firewall_rules_edit.php?id=<?=$filteri;?>" class="fa fa-pencil" title="<?=gettext('Edit')?>"></a>
<a href="firewall_rules_edit.php?dup=<?=$filteri;?>" class="fa fa-clone" title="<?=gettext('Copy')?>"></a>
<?php if (isset($filterent['disabled'])) {
@@ -900,6 +901,30 @@ configsection = "filter";
events.push(function() {
+ // "Move to here" (anchor) action
+ $('[id^=Xmove_]').click(function (event) {
+
+ event.stopImmediatePropagation();
+
+ var anchor_row = $(this).parents("tr:first");
+
+ $('#ruletable > tbody > tr').each(function() {
+ ruleid = this.id.slice(2);
+
+ if (ruleid && !isNaN(ruleid)) {
+ if ($('#frc' + ruleid).prop('checked')) {
+ $(this).insertBefore(anchor_row);
+ fr_toggle(ruleid, "fr");
+ }
+ }
+ });
+
+ $('#order-store').removeAttr('disabled');
+ reindex_rules($(anchor_row).parent('tbody'));
+ dirty = true;
+
+ });
+
// Make rules sortable. Hiding the table before applying sortable, then showing it again is
// a work-around for very slow sorting on FireFox
$('table tbody.user-entries').hide();
@@ -934,7 +959,6 @@ events.push(function() {
return undefined;
}
});
-
});
//]]>
</script>
OpenPOWER on IntegriCloud