[PATCH v2] fff-web: Show hood in public and internal web interface

Christian Dresel fff at chrisi01.de
Di Okt 10 16:52:25 CEST 2017


hi

bin da in einer Mail verrutscht, das Review sollte eigentlich hier drauf:

schicke Sache auch wenn die Tabellen im ssl Bereich bisschen verkackt
aussehen (im Firefox getestet) sind das nur Schönheitssachen die man mal
irgendwann reparieren kann:

Reviewed-by: Christian Dresel <fff at chrisi01.de>

mfg

Christian

On 08.10.2017 16:14, Adrian Schmutzler wrote:
> Changes in v2:
>  - Added separate hood fieldset
>  - Added reset button
>  - Added display of mesh type
> 
> Tested by copy/paste of home.html
> 
> Signed-off-by: Adrian Schmutzler <freifunk at adrianschmutzler.de>
> ---
>  .../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;">
> 

-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 833 bytes
Beschreibung: OpenPGP digital signature
URL         : <http://lists.freifunk.net/pipermail/franken-dev-freifunk.net/attachments/20171010/af50446f/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev