-- wireless toggle was requested, commit and reload page
function m.parse(map)
+ local new_cc = m:formvalue("cbid.wireless.%s.country" % wdev:name())
+ local old_cc = m:get(wdev:name(), "country")
+
if m:formvalue("cbid.wireless.%s.__toggle" % wdev:name()) then
if wdev:get("disabled") == "1" or wnet:get("disabled") == "1" then
wnet:set("disabled", nil)
luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1]))
return
end
+
Map.parse(map)
+
+ if m:get(wdev:name(), "type") == "mac80211" and new_cc and new_cc ~= old_cc then
+ luci.sys.call("iw reg set %q" % new_cc)
+ luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless", arg[1]))
+ return
+ end
end
m.title = luci.util.pcdata(wnet:get_i18n())
end
end
end
- return (list[#list] and list[#list].driver_dbm) or pwr or 0
+ return pwr or ""
end
local iw = luci.sys.wifi.getiwinfo(arg[1])
else
ch = s:taboption("general", Value, "_mode_freq", '<br />'..translate("Operating frequency"))
ch.hwmodes = hw_modes
+ ch.htmodes = iw.htmodelist
ch.freqlist = iw.freqlist
ch.template = "cbi/wireless_modefreq"
------------------- MAC80211 Device ------------------
if hwtype == "mac80211" then
- if #tx_power_list > 1 then
+ if #tx_power_list > 0 then
tp = s:taboption("general", ListValue,
"txpower", translate("Transmit Power"), "dBm")
tp.rmempty = true
return txpower_current(Value.cfgvalue(...), tx_power_list)
end
+ tp:value("", translate("auto"))
for _, p in ipairs(tx_power_list) do
tp:value(p.driver_dbm, "%i dBm (%i mW)"
%{ p.display_dbm, p.display_mw })
return txpower_current(Value.cfgvalue(...), tx_power_list)
end
+ tp:value("", translate("auto"))
for _, p in ipairs(tx_power_list) do
tp:value(p.driver_dbm, "%i dBm (%i mW)"
%{ p.display_dbm, p.display_mw })
return txpower_current(Value.cfgvalue(...), tx_power_list)
end
+ tp:value("", translate("auto"))
for _, p in ipairs(tx_power_list) do
tp:value(p.driver_dbm, "%i dBm (%i mW)"
%{ p.display_dbm, p.display_mw })
end
+ mode = s:taboption("advanced", ListValue, "hwmode", translate("Band"))
+ if hw_modes.b then
+ mode:value("11b", "2.4GHz (802.11b)")
+ if hw_modes.g then
+ mode:value("11bg", "2.4GHz (802.11b+g)")
+ end
+ end
+ if hw_modes.g then
+ mode:value("11g", "2.4GHz (802.11g)")
+ mode:value("11gst", "2.4GHz (802.11g + Turbo)")
+ mode:value("11lrs", "2.4GHz (802.11g Limited Rate Support)")
+ end
+ if hw_modes.a then mode:value("11a", "5GHz (802.11a)") end
+ if hw_modes.n then
+ if hw_modes.g then
+ mode:value("11ng", "2.4GHz (802.11g+n)")
+ mode:value("11n", "2.4GHz (802.11n)")
+ end
+ if hw_modes.a then
+ mode:value("11na", "5GHz (802.11a+n)")
+ mode:value("11n", "5GHz (802.11n)")
+ end
+ htmode = s:taboption("advanced", ListValue, "htmode", translate("HT mode (802.11n)"))
+ htmode:depends("hwmode", "11ng")
+ htmode:depends("hwmode", "11na")
+ htmode:depends("hwmode", "11n")
+ htmode:value("HT20", "20MHz")
+ htmode:value("HT40", "40MHz")
+ end
+
ant1 = s:taboption("advanced", ListValue, "txantenna", translate("Transmitter Antenna"))
ant1.widget = "radio"
ant1:depends("diversity", "")
wmm:depends({mode="ap"})
wmm:depends({mode="ap-wds"})
wmm.default = wmm.enabled
+
+ ifname = s:taboption("advanced", Value, "ifname", translate("Interface name"), translate("Override default interface name"))
+ ifname.optional = true
end
identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa"})
identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"})
identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"})
+ identity:depends({mode="sta", eap_type="tls", encryption="wpa2"})
+ identity:depends({mode="sta", eap_type="tls", encryption="wpa"})
+ identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"})
+ identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa"})
+
+ anonymous_identity = s:taboption("encryption", Value, "anonymous_identity", translate("Anonymous Identity"))
+ anonymous_identity:depends({mode="sta", eap_type="fast", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta", eap_type="fast", encryption="wpa"})
+ anonymous_identity:depends({mode="sta", eap_type="peap", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta", eap_type="peap", encryption="wpa"})
+ anonymous_identity:depends({mode="sta", eap_type="ttls", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta", eap_type="ttls", encryption="wpa"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="fast", encryption="wpa"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="peap", encryption="wpa"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="ttls", encryption="wpa"})
+ anonymous_identity:depends({mode="sta", eap_type="tls", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta", eap_type="tls", encryption="wpa"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa2"})
+ anonymous_identity:depends({mode="sta-wds", eap_type="tls", encryption="wpa"})
password = s:taboption("encryption", Value, "password", translate("Password"))
password:depends({mode="sta", eap_type="fast", encryption="wpa2"})