From 3813d639debd6c73f46590a29215c2ccd079843e Mon Sep 17 00:00:00 2001 From: Manuel Munz Date: Thu, 27 Jan 2011 13:52:37 +0000 Subject: [PATCH] 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. --- .../luasrc/model/cbi/freifunk/ffwizard.lua | 19 +++++++++++++------ .../root/etc/uci-defaults/device-defaults | 10 +++------- .../luasrc/view/freifunk/adminindex.htm | 11 ++++++++++- 3 files changed, 26 insertions(+), 14 deletions(-) diff --git a/applications/luci-ffwizard/luasrc/model/cbi/freifunk/ffwizard.lua b/applications/luci-ffwizard/luasrc/model/cbi/freifunk/ffwizard.lua index 3047ec37a..7c1f64ac6 100644 --- a/applications/luci-ffwizard/luasrc/model/cbi/freifunk/ffwizard.lua +++ b/applications/luci-ffwizard/luasrc/model/cbi/freifunk/ffwizard.lua @@ -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 diff --git a/applications/luci-ffwizard/root/etc/uci-defaults/device-defaults b/applications/luci-ffwizard/root/etc/uci-defaults/device-defaults index 011148d59..6a70e67a2 100755 --- a/applications/luci-ffwizard/root/etc/uci-defaults/device-defaults +++ b/applications/luci-ffwizard/root/etc/uci-defaults/device-defaults @@ -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 diff --git a/modules/freifunk/luasrc/view/freifunk/adminindex.htm b/modules/freifunk/luasrc/view/freifunk/adminindex.htm index d2bf0b7ea..57f6bddba 100644 --- a/modules/freifunk/luasrc/view/freifunk/adminindex.htm +++ b/modules/freifunk/luasrc/view/freifunk/adminindex.htm @@ -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%>
<%:Contact information missing. Please go to this page and fill all required fields: %> - <%:Contact%> + <%:Contact%>

<%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('
Diversity is enabled for device ' .. device .. '. Go to wireless settings to change that.

') + end +end) %> + + <%+footer%> -- 2.25.1