diff --git a/src/usr/local/www/widgets/widgets/gateways.widget.php b/src/usr/local/www/widgets/widgets/gateways.widget.php index 02de23c469..6ecd0ae544 100644 --- a/src/usr/local/www/widgets/widgets/gateways.widget.php +++ b/src/usr/local/www/widgets/widgets/gateways.widget.php @@ -70,6 +70,8 @@ if ($_REQUEST && $_REQUEST['ajax']) { } if ($_POST) { + + if (!is_array($user_settings["widgets"]["gateways_widget"])) { $user_settings["widgets"]["gateways_widget"] = array(); } @@ -78,7 +80,7 @@ if ($_POST) { $user_settings["widgets"]["gateways_widget"]["display_type"] = $_POST["display_type"]; } - if (is_array($_POST['gatewaysfilter'])) { + if (is_array($_POST['show'])) { $validNames = array(); $a_gateways = return_gateways_array(); @@ -86,7 +88,7 @@ if ($_POST) { array_push($validNames, $gname); } - $user_settings["widgets"]["gateways_widget"]["gatewaysfilter"] = implode(',', array_intersect($validNames, $_POST['gatewaysfilter'])); + $user_settings["widgets"]["gateways_widget"]["gatewaysfilter"] = implode(',', array_diff($validNames, $_POST['show'])); } else { $user_settings["widgets"]["gateways_widget"]["gatewaysfilter"] = ""; } @@ -142,7 +144,7 @@ $widgetperiod = isset($config['widgets']['period']) ? $config['widgets']['period $display_type_both_ip = "checked"; } } - ?> +?>
@@ -155,26 +157,44 @@ $widgetperiod = isset($config['widgets']['period']) ? $config['widgets']['period
-
- -
- > + + - +?> + + +
+
- +
@@ -200,8 +220,10 @@ $widgetperiod = isset($config['widgets']['period']) ? $config['widgets']['period } events.push(function(){ - $("#clearallgateways").click(function() { - $('select#gatewaysfilter option').removeAttr("selected"); + $("#showallgateways").click(function() { + $("[id^=show]").each(function() { + $(this).prop("checked", true); + }); }); // Start polling for updates some small random number of seconds from now (so that all the widgets don't