From 71675f7fc67cb38b57500553387d6fcdcf3a41d8 Mon Sep 17 00:00:00 2001 From: Ad Schellevis Date: Thu, 26 Nov 2015 19:35:50 +0000 Subject: [PATCH] (legacy) refactor status_gateway_groups.php --- src/www/status_gateway_groups.php | 273 ++++++++++++------------------ 1 file changed, 110 insertions(+), 163 deletions(-) diff --git a/src/www/status_gateway_groups.php b/src/www/status_gateway_groups.php index 233d8d1fd..460fdb95f 100644 --- a/src/www/status_gateway_groups.php +++ b/src/www/status_gateway_groups.php @@ -1,188 +1,135 @@ . - All rights reserved. + Copyright (C) 2014-2015 Deciso B.V. + Copyright (C) 2010 Seth Mos . + All rights reserved. - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: - 1. Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. + 1. Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. - THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, - INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, - OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. + THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. */ require_once("guiconfig.inc"); -function lookup_gateway_monitor_ip_by_name($name) -{ - $gateways_arr = return_gateways_array(false, true); - if (!empty($gateways_arr[$name])) { - $gateway = $gateways_arr[$name]; - if(!is_ipaddr($gateway['monitor'])) - return $gateway['gateway']; - - return $gateway['monitor']; - } - - return (false); +// request report data +if (!isset($config['gateways']['gateway_group']) || !is_array($config['gateways']['gateway_group'])) { + $a_gateway_groups = array(); +} else { + $a_gateway_groups = &$config['gateways']['gateway_group']; } - - -if (!is_array($config['gateways'])) { - $config['gateways'] = array(); -} - -if (!is_array($config['gateways']['gateway_group'])) { - $config['gateways']['gateway_group'] = array(); -} - -$a_gateway_groups = &$config['gateways']['gateway_group']; - $gateways_status = return_gateways_status(); +$a_gateways = return_gateways_array(); +legacy_html_escape_form_data($a_gateways); +legacy_html_escape_form_data($a_gateway_groups); $pgtitle = array(gettext('System'), gettext('Gateways'), gettext('Group Status')); $shortcut_section = "gateway-groups"; include("head.inc"); - ?> +
+
+
+
+ +
+
+ + + + + + + + + + + + + + + -
-
-
- - 0) print_input_errors($input_errors); ?> - -
- - - -
- - -
- - -
+ + $gateway): + $monitor = isset($gateway['monitor']) && is_ipaddr($gateway['monitor']) ? $gateway['monitor'] : $gateway['gateway']; + $status = $gateways_status[$monitor]['status']; + if (stristr($status, "down")) { + $online = gettext("Offline"); + $bgcolor = "#F08080"; // lightcoral + } elseif (stristr($status, "loss")) { + $online = gettext("Warning, Packetloss"); + $bgcolor = "#F0E68C"; // khaki + } elseif (stristr($status, "delay")) { + $online = gettext("Warning, Latency"); + $bgcolor = "#F0E68C"; // khaki + } elseif ($status == "none") { + $online = gettext("Online"); + $bgcolor = "#90EE90"; // lightgreen + } else { + $online = gettext("Gathering data"); + $bgcolor = "#ADD8E6"; // lightblue + } +?> + + + + + +
+
+   + + , +
+
+
- - - - - - - - - - - - - - - - - -
- - - - - "; - foreach($priorities as $number => $tier) { - echo ""; - } - echo "\n"; - - /* inverse gateway group to gateway priority */ - $priority_arr = array(); - foreach($gateway_group['item'] as $item) { - $itemsplit = explode("|", $item); - $priority_arr[$itemsplit[1]][] = $itemsplit[0]; - } - ksort($priority_arr); - $p = 1; - foreach($priority_arr as $number => $tier) { - /* for each priority process the gateways */ - foreach($tier as $member) { - /* we always have $priority_count fields */ - echo ""; - $c = 1; - while($c <= $priority_count) { - $monitor = lookup_gateway_monitor_ip_by_name($member); - if($p == $c) { - $status = $gateways_status[$monitor]['status']; - if (stristr($status, "down")) { - $online = gettext("Offline"); - $bgcolor = "#F08080"; // lightcoral - } elseif (stristr($status, "loss")) { - $online = gettext("Warning, Packetloss"); - $bgcolor = "#F0E68C"; // khaki - } elseif (stristr($status, "delay")) { - $online = gettext("Warning, Latency"); - $bgcolor = "#F0E68C"; // khaki - } elseif ($status == "none") { - $online = gettext("Online"); - $bgcolor = "#90EE90"; // lightgreen - } else { - $online = gettext("Gathering data"); - $bgcolor = "#ADD8E6"; // lightblue - } - echo ""; - } else { - echo ""; - } - $c++; - } - echo "\n"; - } - $p++; - } - ?> -
" . sprintf(gettext("Tier %s"), $number) . "
 ". htmlspecialchars($member) .", $online  
-
-   -
-
-
-
-
-
-
+ + + + + + + + +