* Performance optimizations
[project/luci.git] / modules / admin-core / luasrc / model / cbi / admin_wifi / networks.lua
1 -- ToDo: Translate, Add descriptions and help texts
2 m = Map("wireless", translate("networks", "Netze"), translate("a_w_networks1", [[Pro WLAN-Gerät können mehrere Netze bereitgestellt werden.
3 Es sollte beachtet werden, dass es hardware- / treiberspezifische Einschränkungen gibt.
4 So kann pro WLAN-Gerät in der Regel entweder 1 Ad-Hoc-Zugang ODER bis zu 3 Access-Point und 1 Client-Zugang
5 gleichzeitig erstellt werden.]]))
6
7 s = m:section(TypedSection, "wifi-iface")
8 s.addremove = true
9 s.anonymous = true
10
11 s:option(Value, "ssid", translate("a_w_netid", "Netzkennung (ESSID)")).maxlength = 32
12
13 device = s:option(ListValue, "device", translate("device", "Gerät"))
14 local d = luci.model.uci.sections("wireless")
15 if d then
16         for k, v in pairs(d) do
17                 if v[".type"] == "wifi-device" then
18                         device:value(k)
19                 end
20         end
21 end
22
23 network = s:option(ListValue, "network", translate("network", "Netzwerk"), translate("a_w_network1", "WLAN-Netz zu Netzwerk hinzufügen"))
24 network:value("")
25 for k, v in pairs(luci.model.uci.sections("network")) do
26         if v[".type"] == "interface" and k ~= "loopback" then
27                 network:value(k)
28         end
29 end
30
31 mode = s:option(ListValue, "mode", translate("mode", "Modus"))
32 mode:value("ap", "Access Point")
33 mode:value("adhoc", "Ad-Hoc")
34 mode:value("sta", "Client")
35 mode:value("wds", "WDS")
36
37 s:option(Value, "bssid", "BSSID").optional = true
38
39 s:option(Value, "txpower", translate("a_w_txpwr", "Sendeleistung"), "dbm").rmempty = true
40
41 s:option(Flag, "frameburst", translate("a_w_brcmburst", "Broadcom-Frameburst")).optional = true
42 s:option(Flag, "bursting", translate("a_w_athburst", "Atheros-Frameburst")).optional = true
43
44
45 encr = s:option(ListValue, "encryption", translate("encryption", "Verschlüsselung"))
46 encr:value("none", "keine")
47 encr:value("wep", "WEP")
48 encr:value("psk", "WPA-PSK")
49 encr:value("wpa", "WPA-Radius")
50 encr:value("psk2", "WPA2-PSK")
51 encr:value("wpa2", "WPA2-Radius")
52
53 key = s:option(Value, "key", translate("key", "Schlüssel"))
54 key:depends("encryption", "wep")
55 key:depends("encryption", "psk")
56 key:depends("encryption", "wpa")
57 key:depends("encryption", "psk2")
58 key:depends("encryption", "wpa2")
59 key.rmempty = true
60
61 server = s:option(Value, "server", translate("a_w_radiussrv", "Radius-Server"))
62 server:depends("encryption", "wpa")
63 server:depends("encryption", "wpa2")
64 server.rmempty = true
65
66 port = s:option(Value, "port", translate("a_w_radiusport", "Radius-Port"))
67 port:depends("encryption", "wpa")
68 port:depends("encryption", "wpa2")
69 port.rmempty = true
70
71 s:option(Flag, "isolate", translate("a_w_apisolation", "AP-Isolation"), translate("a_w_apisolation1", "Unterbindet Client-Client-Verkehr")).optional = true
72
73 s:option(Flag, "hidden", translate("a_w_hideessid", "ESSID verstecken")).optional = true
74
75
76
77 return m