firmware/src/packages/fff/fff-web/files/www/ssl/cgi-bin/home.html
Adrian Schmutzler b88841352c fff-hoods: Use variables for hood file names
Since names may change, this puts the relevant file names for
hood files into variables, so they can be changed at once
without the risk of forgetting some occurrences.

Signed-off-by: Adrian Schmutzler <freifunk@adrianschmutzler.de>
Reviewed-by: Christian Dresel <fff@chrisi01.de>
Reviewed-by: Robert Langhammer <rlanghammer@web.de>
2017-11-02 20:52:51 +01:00

133 lines
4.6 KiB
HTML
Executable File

#!/usr/bin/haserl
<%
. /lib/functions/fff/keyxchange
# prepare
if [ "$REQUEST_METHOD" == "POST" ] ; then
if [ "$POST_resethood" != "" ] ; then
# reset hood
rm "$hoodfilecopy" 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"
else
vpn_active="inaktiv"
fi
if grep -q '1' /sys/class/net/l2tp*/carrier ; then
l2tp_active="aktiv"
else
l2tp_active="inaktiv"
fi
up="$(uptime)"
load="${up##*:}"
uptime="${up%%,*}"
uptime="${uptime##*up}"
#include OpenWrt version
. /etc/openwrt_release
. /etc/firmware_release
addr() {
local addr="$(ip -$1 address show dev $2 2>/dev/null | tr '/' ' '| awk '/inet/{ printf("%s<br />", $2); }')"
echo "${addr:--}"
}
default_gw() {
ip -$1 route list 0/0 dev $2 2> /dev/null | awk '{print($3); exit(0)}'
}
wanif=$(uci -q get network.wan.ifname)
if [ -n "$(default_gw 4 $wanif)" -o -n "$(default_gw 6 $wanif)" ]; then
internet_active="Ja"
else
internet_active="Nein"
fi
# read from keyxchangev2data
. /lib/functions/fff/keyxchange
jsonfile="$(getJsonPath)"
if [ -n "$jsonfile" ] ; then
json_load "$(cat "$jsonfile")"
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>
<fieldset style="min-height: 15.05em;">
<legend>System</legend>
<table>
<tr><th>Name:</th><td><%= ${HOSTNAME} %></td></tr>
<tr><th>Modell:</th><td><% cat /tmp/sysinfo/model 2>/dev/null %></td></tr>
<tr><th>MAC-Adresse:</th><td><%= $(cat /sys/class/net/br-mesh/address) %></td></tr>
<tr><th>Bekannte Knoten:</th><td><%= $((`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>Nachbarknoten:</th><td><%= $(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>VPN via fastd:</th><td><%= ${vpn_active} %></td></tr>
<tr><th>VPN via L2TP:</th><td><%= ${l2tp_active} %></td></tr>
<tr><th>Laufzeit:</th><td><%= ${uptime} %></td></tr>
<tr><th>Auslastung:</th><td><%= ${load} %></td></tr>
<tr><th>Uhrzeit:</th><td><% date %></td></tr>
</table>
</fieldset>
</td><td>
<fieldset style="min-height: 10em;">
<legend>Software</legend>
<table>
<tr><th>Firmware Version:</th><td><%= ${FIRMWARE_VERSION} %></td></tr>
<tr><th>OpenWrt Version:</th><td><%= ${DISTRIB_DESCRIPTION} %></td></tr>
<tr><th>Kernel Version:</th><td><% uname -s -m -r %></td></tr>
<tr><th>Batman-Adv Version:</th><td><% cat /sys/module/batman_adv/version 2>/dev/null %></td></tr>
<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">&nbsp;</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;">
<legend>Netz: Freifunk</legend>
<table>
<tr><th>Nutzer:</th><td><% cat /sys/kernel/debug/batman_adv/bat0/transtable_local 2> /dev/null | grep -c 'W' %></td></tr>
<tr><th>Empfangen:</th><td><% cat /sys/class/net/br-mesh/statistics/rx_bytes 2> /dev/null | human_bytes %></td></tr>
<tr><th>Gesendet:</th><td><% cat /sys/class/net/br-mesh/statistics/tx_bytes 2> /dev/null | human_bytes %></td></tr>
<tr><th>IPv4 Adressen:</th><td><% addr 4 br-mesh %></td></tr>
<tr><th>IPv6 Adressen:</th><td><% addr 6 br-mesh %></td></tr>
</table>
</fieldset>
</td><td>
<fieldset style="min-height: 12.65em;">
<legend>Netz: WAN</legend>
<table>
<tr><th>Internet vorhanden:</th><td><%= ${internet_active} %></td></tr>
<tr><th>Empfangen:</th><td><% cat /sys/class/net/${wanif}/statistics/rx_bytes 2> /dev/null | human_bytes %></td></tr>
<tr><th>Gesendet:</th><td><% cat /sys/class/net/${wanif}/statistics/tx_bytes 2> /dev/null | human_bytes %></td></tr>
<tr><th>IPv4 Adressen:</th><td><% addr 4 $wanif %></td></tr>
<tr><th>IPv6 Adressen:</th><td><% addr 6 $wanif %></td></tr>
</table>
</fieldset>
</td></tr>
</table>
<%in /www/ssl/cgi-bin/footer %>