Merge pull request #1691 from dibdot/travelmate

luci-app-travelmate: final frontend changes for 18.x
This commit is contained in:
Dirk Brenken 2018-03-18 20:24:36 +01:00 committed by GitHub
commit c575c78d2f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 48 additions and 33 deletions

View file

@ -5,7 +5,7 @@
include $(TOPDIR)/rules.mk include $(TOPDIR)/rules.mk
LUCI_TITLE:=LuCI support for Travelmate LUCI_TITLE:=LuCI support for Travelmate
LUCI_DEPENDS:=+travelmate +luci-lib-jsonc +qrencode LUCI_DEPENDS:=+travelmate +luci-lib-jsonc
LUCI_PKGARCH:=all LUCI_PKGARCH:=all
include ../../luci.mk include ../../luci.mk

View file

@ -14,14 +14,14 @@ function index()
entry({"admin", "services", "travelmate"}, firstchild(), _("Travelmate"), 40).dependent = false entry({"admin", "services", "travelmate"}, firstchild(), _("Travelmate"), 40).dependent = false
entry({"admin", "services", "travelmate", "tab_from_cbi"}, cbi("travelmate/overview_tab", {hideresetbtn=true, hidesavebtn=true}), _("Overview"), 10).leaf = true entry({"admin", "services", "travelmate", "tab_from_cbi"}, cbi("travelmate/overview_tab", {hideresetbtn=true, hidesavebtn=true}), _("Overview"), 10).leaf = true
entry({"admin", "services", "travelmate", "stations"}, template("travelmate/stations"), _("Wireless Stations"), 20).leaf = true entry({"admin", "services", "travelmate", "stations"}, template("travelmate/stations"), _("Wireless Stations"), 20).leaf = true
entry({"admin", "services", "travelmate", "apqr"}, template("travelmate/ap_qr"), _("AP QR-Codes"), 30).leaf = true entry({"admin", "services", "travelmate", "logfile"}, call("logread"), _("View Logfile"), 30).leaf = true
entry({"admin", "services", "travelmate", "logfile"}, call("logread"), _("View Logfile"), 40).leaf = true
entry({"admin", "services", "travelmate", "advanced"}, firstchild(), _("Advanced"), 100) entry({"admin", "services", "travelmate", "advanced"}, firstchild(), _("Advanced"), 100)
entry({"admin", "services", "travelmate", "advanced", "configuration"}, cbi("travelmate/configuration_tab"), _("Edit Travelmate Configuration"), 110).leaf = true entry({"admin", "services", "travelmate", "advanced", "configuration"}, cbi("travelmate/configuration_tab"), _("Edit Travelmate Configuration"), 110).leaf = true
entry({"admin", "services", "travelmate", "advanced", "cfg_wireless"}, cbi("travelmate/cfg_wireless_tab"), _("Edit Wireless Configuration"), 120).leaf = true entry({"admin", "services", "travelmate", "advanced", "cfg_wireless"}, cbi("travelmate/cfg_wireless_tab"), _("Edit Wireless Configuration"), 120).leaf = true
entry({"admin", "services", "travelmate", "advanced", "cfg_network"}, cbi("travelmate/cfg_network_tab"), _("Edit Network Configuration"), 130).leaf = true entry({"admin", "services", "travelmate", "advanced", "cfg_network"}, cbi("travelmate/cfg_network_tab"), _("Edit Network Configuration"), 130).leaf = true
entry({"admin", "services", "travelmate", "advanced", "cfg_firewall"}, cbi("travelmate/cfg_firewall_tab"), _("Edit Firewall Configuration"), 140).leaf = true entry({"admin", "services", "travelmate", "advanced", "cfg_firewall"}, cbi("travelmate/cfg_firewall_tab"), _("Edit Firewall Configuration"), 140).leaf = true
entry({"admin", "services", "travelmate", "apqr"}, template("travelmate/ap_qr")).leaf = true
entry({"admin", "services", "travelmate", "wifiscan"}, template("travelmate/wifi_scan")).leaf = true entry({"admin", "services", "travelmate", "wifiscan"}, template("travelmate/wifi_scan")).leaf = true
entry({"admin", "services", "travelmate", "wifiadd"}, cbi("travelmate/wifi_add", {hideresetbtn=true, hidesavebtn=true})).leaf = true entry({"admin", "services", "travelmate", "wifiadd"}, cbi("travelmate/wifi_add", {hideresetbtn=true, hidesavebtn=true})).leaf = true
entry({"admin", "services", "travelmate", "wifiedit"}, cbi("travelmate/wifi_edit", {hideresetbtn=true, hidesavebtn=true})).leaf = true entry({"admin", "services", "travelmate", "wifiedit"}, cbi("travelmate/wifi_edit", {hideresetbtn=true, hidesavebtn=true})).leaf = true

View file

@ -96,20 +96,26 @@ end
o4.default = trmiface o4.default = trmiface
o4.rmempty = false o4.rmempty = false
o5 = s:option(Value, "trm_triggerdelay", translate("Trigger Delay"), if fs.access("/usr/bin/qrencode") then
translate("Additional trigger delay in seconds before travelmate processing begins.")) btn1 = s:option(Button, "btn1", translate("View AP QR-Codes"),
o5.datatype = "range(1,60)" translate("Connect your Android or iOS devices to your router's WiFi using the shown QR code."))
o5.default = 2 btn1.inputtitle = translate("QR-Codes")
o5.rmempty = false btn1.inputstyle = "apply"
btn1.disabled = false
btn = s:option(Button, "", translate("Manual Rescan"), function btn1.write()
luci.http.redirect(luci.dispatcher.build_url("admin", "services", "travelmate", "apqr"))
end
end
btn2 = s:option(Button, "btn2", translate("Manual Rescan"),
translate("Force a manual uplink rescan / reconnect in 'trigger' mode.")) translate("Force a manual uplink rescan / reconnect in 'trigger' mode."))
btn:depends("trm_automatic", "") btn2:depends("trm_automatic", "")
btn.inputtitle = translate("Rescan") btn2.inputtitle = translate("Rescan")
btn.inputstyle = "find" btn2.inputstyle = "find"
btn.disabled = false btn2.disabled = false
function btn.write() function btn2.write()
luci.sys.call("env -i /etc/init.d/travelmate start >/dev/null 2>&1") luci.sys.call("env -i /etc/init.d/travelmate start >/dev/null 2>&1")
luci.http.redirect(luci.dispatcher.build_url("admin", "services", "travelmate")) luci.http.redirect(luci.dispatcher.build_url("admin", "services", "travelmate"))
end end
@ -180,28 +186,34 @@ e2 = e:option(Value, "trm_radio", translate("Radio selection"),
e2.datatype = "and(uciname,rangelength(6,6))" e2.datatype = "and(uciname,rangelength(6,6))"
e2.rmempty = true e2.rmempty = true
e3 = e:option(Value, "trm_maxretry", translate("Connection Limit"), e3 = e:option(Value, "trm_triggerdelay", translate("Trigger Delay"),
translate("Retry limit to connect to an uplink.")) translate("Additional trigger delay in seconds before travelmate processing begins."))
e3.default = 3 e3.datatype = "range(1,60)"
e3.datatype = "range(1,10)" e3.default = 2
e3.rmempty = false e3.rmempty = false
e4 = e:option(Value, "trm_minquality", translate("Signal Quality Threshold"), e4 = e:option(Value, "trm_maxretry", translate("Connection Limit"),
translate("Minimum signal quality threshold as percent for conditional uplink (dis-) connections.")) translate("Retry limit to connect to an uplink."))
e4.default = 35 e4.default = 3
e4.datatype = "range(20,80)" e4.datatype = "range(1,10)"
e4.rmempty = false e4.rmempty = false
e5 = e:option(Value, "trm_maxwait", translate("Interface Timeout"), e5 = e:option(Value, "trm_minquality", translate("Signal Quality Threshold"),
translate("How long should travelmate wait for a successful wlan uplink connection.")) translate("Minimum signal quality threshold as percent for conditional uplink (dis-) connections."))
e5.default = 30 e5.default = 35
e5.datatype = "range(20,40)" e5.datatype = "range(20,80)"
e5.rmempty = false e5.rmempty = false
e6 = e:option(Value, "trm_timeout", translate("Overall Timeout"), e6 = e:option(Value, "trm_maxwait", translate("Interface Timeout"),
translate("Timeout in seconds between retries in 'automatic' mode.")) translate("How long should travelmate wait for a successful wlan uplink connection."))
e6.default = 60 e6.default = 30
e6.datatype = "range(30,300)" e6.datatype = "range(20,40)"
e6.rmempty = false e6.rmempty = false
e7 = e:option(Value, "trm_timeout", translate("Overall Timeout"),
translate("Timeout in seconds between retries in 'automatic' mode."))
e7.default = 60
e7.datatype = "range(30,300)"
e7.rmempty = false
return m return m

View file

@ -44,9 +44,7 @@ This is free software, licensed under the Apache License, Version 2.0
local e_ssid = string.gsub(ssid,"[\"\\';:, ]",[[\\\%1]]) local e_ssid = string.gsub(ssid,"[\"\\';:, ]",[[\\\%1]])
local e_key = string.gsub(key,"[\"\\';:, ]",[[\\\%1]]) local e_key = string.gsub(key,"[\"\\';:, ]",[[\\\%1]])
local qrcode = "" local qrcode = ""
if nixio.fs.access("/usr/bin/qrencode") then qrcode = luci.sys.exec("/usr/bin/qrencode --inline --8bit --type=SVG --output=- 'WIFI:S:\"'" .. e_ssid .. "'\";T:'" .. enc .. "';P:\"'" .. e_key .. "'\";H:'" .. hidden .. "';'")
qrcode = luci.sys.exec("/usr/bin/qrencode --inline --8bit --type=SVG --output=- 'WIFI:S:\"'" .. e_ssid .. "'\";T:'" .. enc .. "';P:\"'" .. e_key .. "'\";H:'" .. hidden .. "';'")
end
-%> -%>
<fieldset class="cbi-section"> <fieldset class="cbi-section">
<legend>AP on <%=device%> with SSID "<%=ssid%>"</legend> <legend>AP on <%=device%> with SSID "<%=ssid%>"</legend>
@ -58,5 +56,10 @@ This is free software, licensed under the Apache License, Version 2.0
end) end)
%> %>
</div> </div>
<div class="cbi-page-actions right">
<form class="inline" action="<%=luci.dispatcher.build_url('admin/services/travelmate/tab_from_cbi')%>" method="post">
<input class="cbi-button cbi-button-reset" type="submit" value="<%:Back to overview%>"/>
</form>
</div>
<%+footer%> <%+footer%>