applications/ffwizard: Do not disable diversity because we don't know which antenna is connected. Instead show a warning on admin/freifunk/adminindex when diversity is enabled and tell the user to change that.
This commit is contained in:
parent
01ad52f27a
commit
3813d639de
3 changed files with 26 additions and 14 deletions
|
@ -101,15 +101,15 @@ end
|
|||
|
||||
-------------------- View --------------------
|
||||
f = SimpleForm("ffwizward", "Freifunkassistent",
|
||||
"Dieser Assistent unterstützt Sie bei der Einrichtung des Routers für das Freifunknetz.")
|
||||
translate("This wizard will assist you in setting up your router for your local Freifunk network or another similar wireless community network."))
|
||||
|
||||
-- if password is not set or default then force the user to set a new one
|
||||
if sys.exec("diff /rom/etc/passwd /etc/passwd") == "" then
|
||||
pw1 = f:field(Value, "pw1", translate("password"))
|
||||
pw1 = f:field(Value, "pw1", translate("Password"))
|
||||
pw1.password = true
|
||||
pw1.rmempty = false
|
||||
|
||||
pw2 = f:field(Value, "pw2", translate("confirmation"))
|
||||
pw2 = f:field(Value, "pw2", translate("Confirmation"))
|
||||
pw2.password = true
|
||||
pw2.rmempty = false
|
||||
|
||||
|
@ -122,13 +122,13 @@ end
|
|||
|
||||
local cc = uci:get(community, "wifi_device", "country") or "DE"
|
||||
|
||||
main = f:field(Flag, "netconfig", "Netzwerk einrichten", "Setzen Sie den Haken, wenn Sie Ihr Freifunk Netzwerk einrichten wollen.")
|
||||
main = f:field(Flag, "netconfig", translate("Configure network"), translate("Select this checkbox to configure your network interfaces."))
|
||||
uci:foreach("wireless", "wifi-device",
|
||||
function(section)
|
||||
local device = section[".name"]
|
||||
local hwtype = section.type
|
||||
local syscc = section.country
|
||||
|
||||
local syscc = uci:get("wireless", device, "country")
|
||||
if not syscc then
|
||||
if hwtype == "atheros" then
|
||||
cc = sys.exec("grep -i '" .. cc .. "' /lib/wifi/cc_translate.txt |cut -d ' ' -f 2") or 0
|
||||
|
@ -136,7 +136,6 @@ uci:foreach("wireless", "wifi-device",
|
|||
elseif hwtype == "mac80211" then
|
||||
sys.exec("iw reg set " .. cc)
|
||||
elseif hwtype == "broadcom" then
|
||||
-- verify that ot works!
|
||||
sys.exec ("wlc country " .. cc)
|
||||
end
|
||||
else
|
||||
|
@ -662,6 +661,14 @@ function main.write(self, section, value)
|
|||
local hwmode = "11bg"
|
||||
local bssid = uci:get_all(community, "wifi_iface", "bssid") or "02:CA:FF:EE:BA:BE"
|
||||
local mrate = 5500
|
||||
devconfig.diversity = sec.diversity or "1"
|
||||
if sec.txantenna then
|
||||
devconfig.txantenna = sec.txantenna
|
||||
end
|
||||
if sec.rxantenna then
|
||||
devconfig.rxantenna = sec.rxantenna
|
||||
end
|
||||
|
||||
-- set bssid, see https://kifuse02.pberg.freifunk.net/moin/channel-bssid-essid for schema
|
||||
if channel and channel ~= "default" then
|
||||
if devconfig.channel ~= channel then
|
||||
|
|
|
@ -8,9 +8,7 @@ set_default_config()
|
|||
atheros)
|
||||
uci -q batch <<-EOF
|
||||
set freifunk.wifi_device.channel=1
|
||||
set freifunk.wifi_device.diversity=0
|
||||
set freifunk.wifi_device.txantenna=1
|
||||
set freifunk.wifi_device.rxantenna=1
|
||||
set freifunk.wifi_device.diversity=1
|
||||
set freifunk.wifi_device.disabled=0
|
||||
set freifunk.wifi_device.txpower=""
|
||||
set freifunk.wifi_device.hwmode=11g
|
||||
|
@ -27,7 +25,7 @@ set_default_config()
|
|||
mac80211)
|
||||
uci -q batch <<-EOF
|
||||
set freifunk.wifi_device.channel=1
|
||||
set freifunk.wifi_device.diversity=""
|
||||
set freifunk.wifi_device.diversity=1
|
||||
set freifunk.wifi_device.disabled=0
|
||||
set freifunk.wifi_device.txpower=""
|
||||
set freifunk.wifi_device.distance=1000
|
||||
|
@ -43,11 +41,9 @@ set_default_config()
|
|||
broadcom)
|
||||
uci -q batch <<-EOF
|
||||
set freifunk.wifi_device.channel=1
|
||||
set freifunk.wifi_device.diversity=""
|
||||
set freifunk.wifi_device.diversity=1
|
||||
set freifunk.wifi_device.disabled=0
|
||||
set freifunk.wifi_device.txpower=""
|
||||
set freifunk.wifi_device.txantenna=0
|
||||
set freifunk.wifi_device.rxantenna=0
|
||||
set freifunk.wifi_device.hwmode=11g
|
||||
set freifunk.wifi_device.distance=1000
|
||||
set freifunk.wifi_iface=defaults
|
||||
|
|
|
@ -26,8 +26,17 @@ local basicsurl = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "fr
|
|||
<% if not (contact.nickname and contact.name and contact.mail) then%>
|
||||
<div class="error">
|
||||
<%:Contact information missing. Please go to this page and fill all required fields: %>
|
||||
<a href='<%=contacturl%>'><%:Contact%></a>
|
||||
<a href='<%=contacturl%>'><%:Contact%></a><p />
|
||||
</div>
|
||||
<%end%>
|
||||
|
||||
<% uci:foreach("wireless", "wifi-device", function(section)
|
||||
local device = section[".name"]
|
||||
local url = luci.dispatcher.build_url(luci.dispatcher.context.path[1], "network", "wireless")
|
||||
if section.diversity ~= "0" and section.disabled ~= "1" then
|
||||
print('<div class="error">Diversity is enabled for device <b>' .. device .. '</b>. Go to <a href="' .. url .. '">wireless settings</a> to change that.</div><p />')
|
||||
end
|
||||
end) %>
|
||||
|
||||
|
||||
<%+footer%>
|
||||
|
|
Loading…
Reference in a new issue