mini/wifi: Make WPA(2)-Radius only avaiable in Master-Mode, Remove double XML-escape...
[project/luci.git] / modules / admin-mini / luasrc / model / cbi / mini / wifi.lua
index 95407be..7aff623 100644 (file)
@@ -15,10 +15,7 @@ $Id$
 
 -- Data init --
 
-luci.model.uci.load_state("wireless")
-local wireless = luci.model.uci.get_all("wireless")
-luci.model.uci.unload("wireless")
-
+local wireless = luci.model.uci.cursor_state():get_all("wireless")
 local wifidata = luci.sys.wifi.getiwconfig()
 local ifaces = {}
 
@@ -96,7 +93,7 @@ t2.render = function() end
 t2:option(DummyValue, "Quality", translate("iwscan_link"))
 essid = t2:option(DummyValue, "ESSID", "ESSID")
 function essid.cfgvalue(self, section)
-       return luci.util.pcdata(self.map:get(section, "ESSID"))
+       return self.map:get(section, "ESSID")
 end
 
 t2:option(DummyValue, "Address", "BSSID")
@@ -148,7 +145,7 @@ s.anonymous = true
 s:option(Value, "ssid", translate("a_w_netid")).maxlength = 32
 
 local devs = {}
-luci.model.uci.foreach("wireless", "wifi-device",
+luci.model.uci.cursor():foreach("wireless", "wifi-device",
        function (section)
                table.insert(devs, section[".name"])
        end)
@@ -167,21 +164,21 @@ mode:value("sta", translate("m_w_client"))
 function mode.write(self, section, value)
        if value == "sta" then
                -- ToDo: Move this away
-               if not luci.model.uci.get("network", "wan") then
-                       luci.model.uci.set("network", "wan", "proto", "none")
-                       luci.model.uci.set("network", "wan", "ifname", " ")
+               if not m.uci:get("network", "wan") then
+                       m.uci:set("network", "wan", "proto", "none")
+                       m.uci:set("network", "wan", "ifname", " ")
                end
 
-               local oldif = luci.model.uci.get("network", "wan", "ifname")
+               local oldif = m.uci:get("network", "wan", "ifname")
                if oldif and oldif ~= " " then
-                       luci.model.uci.set("network", "wan", "_ifname", oldif)
+                       m.uci:set("network", "wan", "_ifname", oldif)
                end
-               luci.model.uci.set("network", "wan", "ifname", " ")
+               m.uci:set("network", "wan", "ifname", " ")
 
                self.map:set(section, "network", "wan")
        else
-               if luci.model.uci.get("network", "wan", "_ifname") then
-                       luci.model.uci.set("network", "wan", "ifname", luci.model.uci.get("network", "wan", "_ifname"))
+               if m.uci:get("network", "wan", "_ifname") then
+                       m.uci:set("network", "wan", "ifname", m.uci:get("network", "wan", "_ifname"))
                end
                self.map:set(section, "network", "lan")
        end
@@ -193,9 +190,9 @@ encr = s:option(ListValue, "encryption", translate("encryption"))
 encr:value("none", "keine")
 encr:value("wep", "WEP")
 encr:value("psk", "WPA-PSK")
-encr:value("wpa", "WPA-Radius")
+encr:value("wpa", "WPA-Radius", {mode="ap"})
 encr:value("psk2", "WPA2-PSK")
-encr:value("wpa2", "WPA2-Radius")
+encr:value("wpa2", "WPA2-Radius", {mode="ap"})
 
 key = s:option(Value, "key", translate("key"))
 key:depends("encryption", "wep")