summaryrefslogtreecommitdiffhomepage
path: root/applications
diff options
context:
space:
mode:
authorJohannes Rothe <mail@johannes-rothe.de>2019-09-19 23:28:39 +0200
committerJohannes Rothe <rothe@magazino.eu>2019-09-24 17:41:08 +0200
commit3d646bee41df28526dc59fb1646fb7fa0072a264 (patch)
tree0eb29ea94251bf5ac970dac42f5c606362cd4981 /applications
parent934fa275b23f93ca6fe4eac5db6a6a6ee3f9581c (diff)
luci-app-travelmate: add support for optional args in auto-login script
This can be helpful for example in hotels where you need to enter a new user/password combination every week. Signed-off-by: Johannes Rothe <mail@johannes-rothe.de>
Diffstat (limited to 'applications')
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_add.lua8
-rw-r--r--applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_edit.lua8
2 files changed, 14 insertions, 2 deletions
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_add.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_add.lua
index e8580daac7..c0c873d76c 100644
--- a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_add.lua
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_add.lua
@@ -140,13 +140,18 @@ end
local login_section = (m.hidden.ssid or "") .. (m.hidden.bssid or "")
login_section = login_section:gsub("[^%w_]", "_")
local cmd = uci:get("travelmate", login_section, "command")
+local cmd_args_default = uci:get("travelmate", login_section, "command_args")
cmd_list = m:field(ListValue, "cmdlist", translate("Auto Login Script"),
translate("External script reference which will be called for automated captive portal logins."))
-cmd_list:value("none")
+cmd_args = m:field(Value, "cmdargs", translate("Optional Arguments"),
+ translate("Space separated list of additional optional arguments passed to the Auto Login Script, i.e. username and password"))
for _, z in ipairs(scripts) do
cmd_list:value(z)
+ cmd_args:depends("cmdlist", z)
end
+cmd_list:value("none")
cmd_list.default = cmd or "none"
+cmd_args.default = cmd_args_default
function wssid.write(self, section, value)
newsection = uci:section("wireless", "wifi-iface", nil, {
@@ -194,6 +199,7 @@ function wssid.write(self, section, value)
end
if uci:get("travelmate", login_section) then
uci:set("travelmate", login_section, "command", cmd_list:formvalue(section))
+ uci:set("travelmate", login_section, "command_args", cmd_args:formvalue(section))
uci:save("travelmate")
uci:commit("travelmate")
end
diff --git a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_edit.lua b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_edit.lua
index cd2fa69ae4..ab0b924549 100644
--- a/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_edit.lua
+++ b/applications/luci-app-travelmate/luasrc/model/cbi/travelmate/wifi_edit.lua
@@ -133,13 +133,18 @@ if s ~= nil then
local login_section = (s.ssid or "") .. (s.bssid or "")
login_section = login_section:gsub("[^%w_]", "_")
local cmd = uci:get("travelmate", login_section, "command")
+ local cmd_args_default = uci:get("travelmate", login_section, "command_args")
cmd_list = m:field(ListValue, "cmdlist", translate("Auto Login Script"),
translate("External script reference which will be called for automated captive portal logins."))
- cmd_list:value("none")
+ cmd_args = m:field(Value, "cmdargs", translate("Optional Arguments"),
+ translate("Space separated list of additional optional arguments passed to the Auto Login Script, i.e. username and password"))
for _, z in ipairs(scripts) do
cmd_list:value(z)
+ cmd_args:depends("cmdlist", z)
end
+ cmd_list:value("none")
cmd_list.default = cmd or "none"
+ cmd_args.default = cmd_args_default
else
m.on_cancel()
end
@@ -181,6 +186,7 @@ function wssid.write(self, section, value)
end
if uci:get("travelmate", login_section) then
uci:set("travelmate", login_section, "command", cmd_list:formvalue(section))
+ uci:set("travelmate", login_section, "command_args", cmd_args:formvalue(section))
uci:save("travelmate")
uci:commit("travelmate")
end