dhcp_dhcp_start_desc = "first address (last octet)"
dhcp_dhcp_limit_desc = "number of leased addresses -1"
+luci_ethers = "Static Leases"
+
a_n_ptp = "Point-to-Point Connections"
a_n_ptp1 = [[Point-to-Point connections with PPPoE or PPTP are often used to connect a device
over DSL or similar technologies to an internet access point.]]
cbi_add = "Add entry"
cbi_del = "Remove entry"
cbi_invalid = "Error: Invalid input value"
-cbi_addopt = "-- Additional Field --"
\ No newline at end of file
+cbi_addopt = "-- Additional Field --"
+cbi_optional = " (optional)"
\ No newline at end of file
iwscan_signal = [[Signal]]
link = [[Verb.]]
+luci_ethers = "Statische Einträge"
+
network_interface_demand = [[Automatische Trennung]]
network_interface_demand_desc = [[Zeit nach der die Verbindung bei Inaktivität getrennt wird]]
network_interface_keepalive = [[Keep-Alive]]
k, v = line:match("([^ ]+) +([^ ]+)")
s:option(Value, "dhcp"..k, v).optional = true
end
+
+m2 = Map("luci_ethers", translate("luci_ethers"))
+
+s = m2:section(TypedSection, "static_lease", "")
+s.addremove = true
+s.anonymous = true
+s.template = "cbi/tblsection"
+
+s:option(Value, "macaddr", translate("macaddress"))
+s:option(Value, "ipaddr", translate("ipaddress"))
+
-return m
\ No newline at end of file
+return m, m2
\ No newline at end of file
local i18n = luci.i18n.translate
entry({"mini", "network"}, cbi("mini-network/basic"), i18n("network"))
+ entry({"mini", "network", "dhcp"}, cbi("mini-network/dhcp"), "DHCP")
end
\ No newline at end of file
s = m:section(NamedSection, "lan", "interface", "Local Network")
s:option(Value, "ipaddr", translate("ipaddress"))
s:option(Value, "netmask", translate("netmask"))
-gw = s:option(Value, "gateway", translate("gateway"))
+gw = s:option(Value, "gateway", translate("gateway") .. translate("cbi_optional"))
gw.rmempty = true
-dns = s:option(Value, "dns", translate("dnsserver"))
+dns = s:option(Value, "dns", translate("dnsserver") .. translate("cbi_optional"))
dns.rmempty = true
pwd:depends("proto", "pppoe")
pwd:depends("proto", "pptp")
-kea = s:option(Value, "keepalive", "Keep-Alive")
+kea = s:option(Value, "keepalive", "Keep-Alive" .. translate("cbi_optional"))
kea:depends("proto", "pppoe")
kea:depends("proto", "pptp")
kea.rmempty = true
-cod = s:option(Value, "demand", "Dial on Demand")
+cod = s:option(Value, "demand", "Dial on Demand" .. translate("cbi_optional"))
cod:depends("proto", "pppoe")
cod:depends("proto", "pptp")
cod.rmempty = true
srv:depends("proto", "pptp")
srv.rmempty = true
-mtu = s:option(Value, "mtu", "MTU")
+mtu = s:option(Value, "mtu", "MTU" .. translate("cbi_optional"))
mtu:depends("proto", "static")
mtu:depends("proto", "dhcp")
mtu:depends("proto", "pppoe")
--- /dev/null
+--[[
+LuCI - Lua Configuration Interface
+
+Copyright 2008 Steven Barth <steven@midlink.org>
+Copyright 2008 Jo-Philipp Wich <xm@leipzig.freifunk.net>
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+$Id$
+]]--
+require("luci.model.uci")
+require("luci.sys")
+
+m = Map("dhcp", "DHCP")
+
+s = m:section(TypedSection, "dhcp", "DHCP-Server")
+s.anonymous = true
+s:depends("interface", "lan")
+
+enable = s:option(ListValue, "ignore", "", "")
+enable:value(0, "enabled")
+enable:value(1, "disabled")
+
+start = s:option(Value, "start", "First address")
+start.rmempty = true
+start:depends("ignore", "0")
+
+
+limit = s:option(Value, "limit", "Number of leases", "")
+limit:depends("ignore", "0")
+
+function limit.cfgvalue(self, section)
+ local value = Value.cfgvalue(self, section)
+
+ if value then
+ return tonumber(value) + 1
+ end
+end
+
+function limit.write(self, section, value)
+ value = tonumber(value) - 1
+ return Value.write(self, section, value)
+end
+
+limit.rmempty = true
+
+time = s:option(Value, "leasetime")
+time:depends("ignore", "0")
+time.rmempty = true
+
+m2 = Map("luci_ethers", translate("luci_ethers"))
+
+s = m2:section(TypedSection, "static_lease", "")
+s.addremove = true
+s.anonymous = true
+s.template = "cbi/tblsection"
+
+s:option(Value, "macaddr", translate("macaddress"))
+s:option(Value, "ipaddr", translate("ipaddress"))
+
+return m, m2
\ No newline at end of file