From 5eabad3db3cd1f39596f2e682167e1ea2e81326e Mon Sep 17 00:00:00 2001 From: Phil Davis Date: Mon, 13 Jul 2015 10:53:03 +0545 Subject: Cancel button after input error If there is an input error then the edit page is redrawn showing the input errors. The HTTP_REFERER becomes the current page, rather than the true original referer. Then if you click Cancel the current page is just redrawn. This change makes the code remember the original referer, so if the user enters some invalid data, presses Save, reads the input error messages then presses Cancel they are taken back out to the original page - the same as if Cancel was used before Save. --- usr/local/www/load_balancer_virtual_server_edit.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'usr/local/www/load_balancer_virtual_server_edit.php') diff --git a/usr/local/www/load_balancer_virtual_server_edit.php b/usr/local/www/load_balancer_virtual_server_edit.php index 5326b99..aa1fd1c 100644 --- a/usr/local/www/load_balancer_virtual_server_edit.php +++ b/usr/local/www/load_balancer_virtual_server_edit.php @@ -43,7 +43,11 @@ require("guiconfig.inc"); -$referer = (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/load_balancer_virtual_server.php'); +if (isset($_POST['referer'])) { + $referer = $_POST['referer']; +} else { + $referer = (isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '/load_balancer_virtual_server.php'); +} if (!is_array($config['load_balancer']['virtual_server'])) { $config['load_balancer']['virtual_server'] = array(); @@ -296,6 +300,7 @@ include("head.inc"); " /> " onclick="window.location.href=''" /> + -- cgit v1.1