--- gateways.widget.php.orig 2023-10-16 20:07:35.512103000 +0200
+++ gateways.widget.php 2023-10-16 21:06:58.663574000 +0200
@@ -54,6 +54,58 @@
if (in_array($gname, $hiddengateways)) {
continue;
}
+
+ if ($gateways_status[$gname]) {
+ if (stristr($gateways_status[$gname]['status'], "online")) {
+ switch ($gateways_status[$gname]['substatus']) {
+ case "highloss":
+ $online = gettext("Danger, Packetloss");
+ $bgcolor = "danger";
+ break;
+ case "highdelay":
+ $online = gettext("Danger, Latency");
+ $bgcolor = "danger";
+ break;
+ case "loss":
+ $online = gettext("Warning, Packetloss");
+ $bgcolor = "warning";
+ break;
+ case "delay":
+ $online = gettext("Warning, Latency");
+ $bgcolor = "warning";
+ break;
+ default:
+ if ($status['monitor_disable'] || ($status['monitorip'] == "none")) {
+ $online = gettext("Online
(unmonitored)");
+ } else {
+ $online = gettext("Online");
+ }
+ $bgcolor = "success";
+ }
+ } elseif (stristr($gateways_status[$gname]['status'], "down")) {
+ $bgcolor = "danger";
+ switch ($gateways_status[$gname]['substatus']) {
+ case "force_down":
+ $online = gettext("Offline (forced)");
+ break;
+ case "highloss":
+ $online = gettext("Offline, Packetloss");
+ break;
+ case "highdelay":
+ $online = gettext("Offline, Latency");
+ break;
+ default:
+ $online = gettext("Offline");
+ }
+ } else {
+ $online = gettext("Pending");
+ $bgcolor = "info"; // lightgray
+ }
+ } else {
+ $online = gettext("Unknown");
+ $bgcolor = "info"; // lightblue
+ }
+
if (isset($gateway['inactive'])) {
$title = gettext("Gateway inactive, interface is missing");
$icon = 'fa-times-circle-o';
@@ -72,7 +124,7 @@
$gw_displayed = true;
$rtnstr .= "