From a25327390213285c15c50c88d94c9d8abdb7ccd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ermal=20Lu=E7i?= Date: Mon, 18 Jan 2010 20:55:13 +0000 Subject: Ticket #305. Grey out the gateway when it is a dynamic one. --- etc/inc/gwlb.inc | 7 +++++-- usr/local/www/system_gateways_edit.php | 4 +++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/etc/inc/gwlb.inc b/etc/inc/gwlb.inc index fcffdc2..0c8b3b7 100644 --- a/etc/inc/gwlb.inc +++ b/etc/inc/gwlb.inc @@ -275,6 +275,7 @@ function return_gateways_array($disabled = false) { if(! is_ipaddr($gateway['gateway'])) { $gateway['gateway'] = "dynamic"; } + $gateway['dynamic'] = true; } if($gateway['monitor'] == "") { $gateway['monitor'] = $gateway['gateway']; @@ -292,7 +293,8 @@ function return_gateways_array($disabled = false) { continue; } $gateway = array(); - $gateway['gateway'] = get_interface_gateway($ifname); + $gateway['dynamic'] = false; + $gateway['gateway'] = get_interface_gateway($ifname, $gateway['dynamic']); $gateway['interface'] = get_real_interface($ifname); $gateway['name'] = "{$ifname}"; $gateway['attribute'] = "system"; @@ -494,7 +496,7 @@ function lookup_gateway_interface_by_name($name) { return(false); } -function get_interface_gateway($interface) { +function get_interface_gateway($interface, &$dynamic = false) { global $config, $g; $iflist = get_configured_interface_with_descr(); @@ -524,6 +526,7 @@ function get_interface_gateway($interface) { if (file_exists("{$g['tmp_path']}/{$realif}_router")) { $gw = file_get_contents("{$g['tmp_path']}/{$realif}_router"); $gw = rtrim($gw); + $dynamic = true; } } diff --git a/usr/local/www/system_gateways_edit.php b/usr/local/www/system_gateways_edit.php index 9b26c9c..9b0b244 100755 --- a/usr/local/www/system_gateways_edit.php +++ b/usr/local/www/system_gateways_edit.php @@ -67,6 +67,8 @@ if (isset($id) && $a_gateways[$id]) { $pconfig['interface'] = $a_gateways[$id]['interface']; $pconfig['gateway'] = $a_gateways[$id]['gateway']; $pconfig['defaultgw'] = $a_gateways[$id]['defaultgw']; + if (isset($a_gateways[$id]['dynamic'])) + $pconfig['dynamic'] = true; if($a_gateway_item[$id]['monitor'] <> "") { $pconfig['monitor'] = $a_gateway_item[$id]['monitor']; } else { @@ -258,7 +260,7 @@ include("head.inc"); $gateway = htmlspecialchars($pconfig['gateway']); } ?> - + >
Gateway IP address -- cgit v1.1