[SQUASHED PATCH v17 7/8] fff-web: Show hood in public and internal web interface

Tim Niemeyer tim at tn-x.org
Sa Okt 14 19:19:58 CEST 2017


From: Adrian Schmutzler <freifunk at adrianschmutzler.de>

Tested by copy/paste of home.html

Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
Reviewed-by: Christian Dresel <fff at chrisi01.de>
Signed-off-by: Tim Niemeyer <tim at tn-x.org>
---

Changes in v17: None
Changes in v16: None
Changes in v15: None
Changes in v14: None
Changes in v13: None
Changes in v12: None
Changes in v11: None
Changes in v10: None
Changes in v9: None
Changes in v8: None
Changes in v7: None
Changes in v6: None
Changes in v5: None
Changes in v4: None
Changes in v3: None
Changes in v2:
- Added separate hood fieldset
- Added reset button
- Added display of mesh type

 .../fff-web/files/www/public/cgi-bin/status.html   |  2 ++
 .../fff/fff-web/files/www/ssl/cgi-bin/header       |  1 +
 .../fff/fff-web/files/www/ssl/cgi-bin/home.html    | 37 +++++++++++++++++++++-
 3 files changed, 39 insertions(+), 1 deletion(-)

diff --git a/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html b/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
index ae58260..f96846c 100755
--- a/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
+++ b/src/packages/fff/fff-web/files/www/public/cgi-bin/status.html
@@ -3,6 +3,7 @@
 <%
 echo -en "Content-Type: text/html\r\n\r\n"
 HOSTNAME=$(uci -q get 'system. at system[0].hostname')
+hood="$(uci -q get "system. at system[0].hood")"
 
 MAC="$(uci -q get network.mesh.macaddr)"
 lat="$(uci -q get system. at system[0].latitude)"
@@ -59,6 +60,7 @@ contact="$(uci -q get system. at system[0].contact)"
 						<fieldset style="min-height: 15em;">
 							<legend>Status</legend>
 							<table>
+								<tr><th>Hood:</th><td><% echo "$hood" %></td></tr>
 								<tr><th>Nachbarknoten:</th><td><% echo -n $(cat /sys/kernel/debug/batman_adv/bat0/originators | grep '^[0-9a-f]' | cut -b 37-53 | sort | uniq | wc -l 2> /dev/null) %></td></tr>
 								<tr><th>Bekannte Knoten:</th><td><% echo -n $((`cat /sys/kernel/debug/batman_adv/bat0/transtable_global | grep '^ [^ ]' | cut -b 39-55 | sort | uniq | wc -l 2> /dev/null`+1)) %></td></tr>
 								<tr><th>Lokale Clients:</th><td><% echo -n $(cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W') %></td></tr>
diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
index 8df0ed0..c327013 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/header
@@ -13,6 +13,7 @@ nav_entry() {
 }
 
 HOSTNAME=$(uci -q get 'system. at system[0].hostname')
+hood="$(uci -q get "system. at system[0].hood")"
 
 NOW=$(date +%s)
 #Check if new Firmware check older then 1 day
diff --git a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
index b2529e1..1569c01 100755
--- a/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
+++ b/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
@@ -1,7 +1,18 @@
 #!/usr/bin/haserl
 
+<%
+# prepare
+if [ "$REQUEST_METHOD" == "POST" ] ; then
+	if [ "$POST_resethood" != "" ] ; then
+		# reset hood
+		rm /www/public/keyxchangev2data 2> /dev/null
+		MSG='<span class="green">Hood-Daten werden innerhalb von 5 Minuten neu prozessiert.</span>'
+	fi
+fi
+%>
 <%in /www/ssl/cgi-bin/header %>
 <%in /www/ssl/cgi-bin/helpers %>
+<% show_msg %>
 <%
 if pidof fastd >/dev/null ; then
 	vpn_active="aktiv"
@@ -36,6 +47,18 @@ else
 	internet_active="Nein"
 fi
 
+# read from keyxchangev2data
+. /usr/share/libubox/jshn.sh
+if [ -s /tmp/keyxchangev2data ] ; then
+	json_load "$(cat /tmp/keyxchangev2data)"
+	json_select hood
+	json_get_var mesh_type2 mesh_type2
+	json_get_var mesh_type5 mesh_type5
+else
+	mesh_type2="-"
+	mesh_type5="-"
+fi
+
 %>
 <table style="width: 100%;">
 <tr><td>
@@ -55,7 +78,7 @@ fi
 	</table>
 </fieldset>
 </td><td>
-<fieldset style="min-height: 15.05em;">
+<fieldset style="min-height: 10em;">
 	<legend>Software</legend>
 	<table>
 		<tr><th>Firmware Version:</th><td><%= ${FIRMWARE_VERSION} %></td></tr>
@@ -65,6 +88,18 @@ fi
 		<tr><th>Fastd Version:</th><td><% fastd --version 2> /dev/null | cut -d' ' -f 2 %></td></tr>
 	</table>
 </fieldset>
+<form method="post">
+<fieldset style="min-height: 5em;">
+	<legend>Hood</legend>
+	<table>
+		<tr><th style="width:200px">Hood:</th><td><% echo "$hood" %></td></tr>
+		<tr><th style="width:200px">Mesh-Type (2.4/5 GHz):</th><td><% echo "${mesh_type2} / ${mesh_type5}" %></td></tr>
+		<tr><td colspan="2"> </td></tr>
+		<tr><td colspan="2">Beim Klicken werden die Hood-Daten innerhalb von 5 Minuten neu abgerufen und angewandt:</td></tr>
+		<tr><td colspan="2"><input type="submit" name="resethood" value="Reset hood data" /></td></tr>
+	</table>
+</fieldset>
+</form>
 </td></tr>
 <tr><td>
 <fieldset style="min-height: 12.65em;">
-- 
2.11.0



Mehr Informationen über die Mailingliste franken-dev