summaryrefslogtreecommitdiffstats
path: root/src/usr
diff options
context:
space:
mode:
authorPhil Davis <phil.davis@inf.org>2016-01-25 21:55:07 +0545
committerPhil Davis <phil.davis@inf.org>2016-01-25 21:55:07 +0545
commitae6814a2df87d58d3b69db12f9f2624f8876226f (patch)
tree57a0f6e2203b620c80370cb6681b4c5081bb990f /src/usr
parent8a4913ffd07a9dee27d8c408f6936cfb3ab6c2f7 (diff)
downloadpfsense-ae6814a2df87d58d3b69db12f9f2624f8876226f.zip
pfsense-ae6814a2df87d58d3b69db12f9f2624f8876226f.tar.gz
Add leaving page message to NAT pages
These pages use the draggable/sortable rows stuff, so could use the same warning message if the user tries to change page before saving
Diffstat (limited to 'src/usr')
-rw-r--r--src/usr/local/www/firewall_nat.php17
-rw-r--r--src/usr/local/www/firewall_nat_1to1.php17
-rw-r--r--src/usr/local/www/firewall_nat_npt.php17
-rw-r--r--src/usr/local/www/firewall_nat_out.php17
4 files changed, 68 insertions, 0 deletions
diff --git a/src/usr/local/www/firewall_nat.php b/src/usr/local/www/firewall_nat.php
index f2c8241..869fbff 100644
--- a/src/usr/local/www/firewall_nat.php
+++ b/src/usr/local/www/firewall_nat.php
@@ -424,12 +424,29 @@ events.push(function() {
cursor: 'grabbing',
update: function(event, ui) {
$('#order-store').removeAttr('disabled');
+ dirty = true;
}
});
// Check all of the rule checkboxes so that their values are posted
$('#order-store').click(function () {
$('[id^=frc]').prop('checked', true);
+
+ // Suppress the "Do you really want to leave the page" message
+ saving = true;
+ });
+
+ // Globals
+ saving = false;
+ dirty = false;
+
+ // provide a warning message if the user tries to change page before saving
+ $(window).bind('beforeunload', function(){
+ if (!saving && dirty) {
+ return ("<?=gettext('You have moved one or more Port Forward rules but have not yet saved')?>");
+ } else {
+ return undefined;
+ }
});
});
//]]>
diff --git a/src/usr/local/www/firewall_nat_1to1.php b/src/usr/local/www/firewall_nat_1to1.php
index 92b0a23..4661e70 100644
--- a/src/usr/local/www/firewall_nat_1to1.php
+++ b/src/usr/local/www/firewall_nat_1to1.php
@@ -303,12 +303,29 @@ events.push(function() {
cursor: 'grabbing',
update: function(event, ui) {
$('#order-store').removeAttr('disabled');
+ dirty = true;
}
});
// Check all of the rule checkboxes so that their values are posted
$('#order-store').click(function () {
$('[id^=frc]').prop('checked', true);
+
+ // Suppress the "Do you really want to leave the page" message
+ saving = true;
+ });
+
+ // Globals
+ saving = false;
+ dirty = false;
+
+ // provide a warning message if the user tries to change page before saving
+ $(window).bind('beforeunload', function(){
+ if (!saving && dirty) {
+ return ("<?=gettext('You have moved one or more NAT 1:1 mappings but have not yet saved')?>");
+ } else {
+ return undefined;
+ }
});
});
//]]>
diff --git a/src/usr/local/www/firewall_nat_npt.php b/src/usr/local/www/firewall_nat_npt.php
index d57d3f0..2317dbd 100644
--- a/src/usr/local/www/firewall_nat_npt.php
+++ b/src/usr/local/www/firewall_nat_npt.php
@@ -281,12 +281,29 @@ events.push(function() {
cursor: 'grabbing',
update: function(event, ui) {
$('#order-store').removeAttr('disabled');
+ dirty = true;
}
});
// Check all of the rule checkboxes so that their values are posted
$('#order-store').click(function () {
$('[id^=frc]').prop('checked', true);
+
+ // Suppress the "Do you really want to leave the page" message
+ saving = true;
+ });
+
+ // Globals
+ saving = false;
+ dirty = false;
+
+ // provide a warning message if the user tries to change page before saving
+ $(window).bind('beforeunload', function(){
+ if (!saving && dirty) {
+ return ("<?=gettext('You have moved one or more NPt mappings but have not yet saved')?>");
+ } else {
+ return undefined;
+ }
});
});
//]]>
diff --git a/src/usr/local/www/firewall_nat_out.php b/src/usr/local/www/firewall_nat_out.php
index f0a66dc..c0d696e 100644
--- a/src/usr/local/www/firewall_nat_out.php
+++ b/src/usr/local/www/firewall_nat_out.php
@@ -684,12 +684,29 @@ events.push(function() {
cursor: 'grabbing',
update: function(event, ui) {
$('#order-store').removeAttr('disabled');
+ dirty = true;
}
});
// Check all of the rule checkboxes so that their values are posted
$('#order-store').click(function () {
$('[id^=frc]').prop('checked', true);
+
+ // Suppress the "Do you really want to leave the page" message
+ saving = true;
+ });
+
+ // Globals
+ saving = false;
+ dirty = false;
+
+ // provide a warning message if the user tries to change page before saving
+ $(window).bind('beforeunload', function(){
+ if (!saving && dirty) {
+ return ("<?=gettext('You have moved one or more NAT outbound mappings but have not yet saved')?>");
+ } else {
+ return undefined;
+ }
});
});
//]]>
OpenPOWER on IntegriCloud