applications/luci-splash:
[project/luci.git] / applications / luci-splash / luasrc / model / cbi / splash / splash.lua
1 -- ToDo: Translate, Add descriptions and help texts
2 require("luci.model.uci")
3
4 m = Map("luci_splash", "Client-Splash", [[Client-Splash ist das Freifunk Hotspot-Authentifizierungs-System.]])
5
6 s = m:section(NamedSection, "general", "core", "Allgemein")
7 s:option(Value, "leasetime", "Freigabezeit", "h")
8
9 s:option(Value, "limit_up", "Upload-Limitierung", "Kilobyte/s - limitiert die Upload-Geschwindigkeit von Clients")
10 s:option(Value, "limit_down", "Download-Limitierung", "Kilobyte/s - limitiert die Download-Geschwindigkeit von Clients")
11
12 s:option(DummyValue, "_tmp", "",
13         "Bandbreitenlimitierung für Clients wird aktiviert wenn sowohl Up- als auch " ..
14         "Download-Geschwindigkeit angegeben werden. Auf 0 setzen um die Limitierung zu deaktivieren. " ..
15         "Clients in der Whitelist werden nicht limitiert.")
16
17 s = m:section(TypedSection, "iface", "Schnittstellen",
18         "Bestimmt die Schnittstellen auf denen Splashing aktiviert werden soll. " ..
19         "Diese Einstellungen müssen normalerweise nicht angepasst werden.")
20
21 s.template = "cbi/tblsection"
22 s.addremove = true
23 s.anonymous = true
24
25 local uci = luci.model.uci.cursor()
26
27 zone = s:option(ListValue, "zone", "Firewallzone",
28         "Splash-Regeln in der angegebenen Zone eingliedern")
29
30 uci:foreach("firewall", "zone",
31         function (section)
32                 zone:value(section.name)
33         end)
34         
35 iface = s:option(ListValue, "network", "Netzwerk",
36         "Client-Verkehr auf der angegebenen Schnittstelle abfangen")
37
38 uci:foreach("network", "interface",
39         function (section)
40                 if section[".name"] ~= "loopback" then
41                         iface:value(section[".name"])
42                 end
43         end)
44         
45 uci:foreach("network", "alias",
46         function (section)
47                 iface:value(section[".name"])
48         end)
49
50
51 s = m:section(TypedSection, "whitelist", "Whitelist",
52         "MAC-Adressen in dieser Liste werden automatisch freigegeben und unterliegen " ..
53         "keiner Bandbreitenlimitierung.")
54
55 s.template = "cbi/tblsection"
56 s.addremove = true
57 s.anonymous = true
58 s:option(Value, "mac", "MAC-Adresse")
59
60
61 s = m:section(TypedSection, "blacklist", "Blacklist",
62         "MAC-Adressen in dieser Liste werden automatisch gesperrt. Verkehr von diesen " ..
63         "Adressen wird komplett verworfen und es wird kein Verbindungsaufbau via WLAN " ..
64         "zugelassen.")
65
66 s.template = "cbi/tblsection"
67 s.addremove = true
68 s.anonymous = true
69 s:option(Value, "mac", "MAC-Adresse")
70
71 s = m:section(TypedSection, "subnet", "Freigegebene Subnetze",
72         "Hier eingetragene Subnetze oder Host-Adressen sind vom Splash-Vorgang ausgenommen.")
73
74 s.template = "cbi/tblsection"
75 s.addremove = true
76 s.anonymous = true
77 s:option(Value, "ipaddr", "IP-Adresse")
78 s:option(Value, "netmask", "Netzmaske", "optional bei Host-Adressen").rmempty = true
79
80         
81 return m