From caf2dd037ba4b560a0794ce87d6a230e7a6cbcf8 Mon Sep 17 00:00:00 2001
From: lemoer <git@irrelefant.net>
Date: Sun, 24 Nov 2019 01:15:18 +0100
Subject: [PATCH] gluon-status-page: add gateway_nexthop to status page
 statistics

---
 .../lib/gluon/status-page/view/status-page.html    |  1 +
 package/gluon-status-page/i18n/de.po               |  3 +++
 .../gluon-status-page/i18n/gluon-status-page.pot   |  3 +++
 .../gluon-status-page/javascript/status-page.js    | 14 ++++++++++++++
 4 files changed, 21 insertions(+)

diff --git a/package/gluon-status-page/files/lib/gluon/status-page/view/status-page.html b/package/gluon-status-page/files/lib/gluon/status-page/view/status-page.html
index 6e18b010d..641c79aa1 100644
--- a/package/gluon-status-page/files/lib/gluon/status-page/view/status-page.html
+++ b/package/gluon-status-page/files/lib/gluon/status-page/view/status-page.html
@@ -136,6 +136,7 @@
 					<tr><th><%:RAM%></th><td><%= statistics('memory', 'memory') %></td></tr>
 					<tr><th><%:Filesystem%></th><td><%= statistics('rootfs_usage', 'percent') %></td></tr>
 					<tr><th><%:Gateway%></th><td><%= statistics('gateway') %></td></tr>
+					<tr><th><%:Gateway Nexthop%></th><td><%= statistics('gateway_nexthop', 'neighbour') %></td></tr>
 					<tr><th><%:Clients%></th><td><%= statistics('clients/total') %></td></tr>
 				</table>
 
diff --git a/package/gluon-status-page/i18n/de.po b/package/gluon-status-page/i18n/de.po
index ef0374c07..5caebfde5 100644
--- a/package/gluon-status-page/i18n/de.po
+++ b/package/gluon-status-page/i18n/de.po
@@ -55,6 +55,9 @@ msgstr "Weitergeleitet"
 msgid "Gateway"
 msgstr "Gateway"
 
+msgid "Gateway Nexthop"
+msgstr "Gateway Nexthop"
+
 msgid "IP address"
 msgstr "IP-Adresse"
 
diff --git a/package/gluon-status-page/i18n/gluon-status-page.pot b/package/gluon-status-page/i18n/gluon-status-page.pot
index 766a5de80..e471e8789 100644
--- a/package/gluon-status-page/i18n/gluon-status-page.pot
+++ b/package/gluon-status-page/i18n/gluon-status-page.pot
@@ -46,6 +46,9 @@ msgstr ""
 msgid "Gateway"
 msgstr ""
 
+msgid "Gateway Nexthop"
+msgstr ""
+
 msgid "IP address"
 msgstr ""
 
diff --git a/package/gluon-status-page/javascript/status-page.js b/package/gluon-status-page/javascript/status-page.js
index e3405cf6c..005a08971 100644
--- a/package/gluon-status-page/javascript/status-page.js
+++ b/package/gluon-status-page/javascript/status-page.js
@@ -112,6 +112,17 @@
 		'bytes': function(bytes) {
 			return prettyBytes(bytes);
 		},
+		'neighbour': function(addr) {
+			for (var i in interfaces) {
+				var iface = interfaces[i];
+				var neigh = iface.get_neigh(addr);
+				if (!neigh)
+					continue;
+				return neigh.get_hostname() + ' (' + i + ')';
+			}
+
+			return addr + ' (unknown iface)';
+		}
 	}
 
 
@@ -582,6 +593,9 @@
 		}
 
 		return {
+			'get_hostname': function() {
+				return hostname.textContent;
+			},
 			'update_nodeinfo': function(nodeinfo) {
 				var addr = choose_address(nodeinfo.network.addresses);
 				if (addr) {
-- 
GitLab