From 8bb8b7c09cee818246312a637d846be491e171d3 Mon Sep 17 00:00:00 2001 From: Steven Barth Date: Tue, 15 Jul 2008 16:28:29 +0000 Subject: modules/admin-mini: Added DHCP page modules/admin-full: Added static leases configuration to DHCP page --- .../admin-mini/luasrc/controller/mini/network.lua | 1 + .../luasrc/model/cbi/mini-network/basic.lua | 10 ++-- .../luasrc/model/cbi/mini-network/dhcp.lua | 65 ++++++++++++++++++++++ 3 files changed, 71 insertions(+), 5 deletions(-) create mode 100644 modules/admin-mini/luasrc/model/cbi/mini-network/dhcp.lua (limited to 'modules/admin-mini/luasrc') diff --git a/modules/admin-mini/luasrc/controller/mini/network.lua b/modules/admin-mini/luasrc/controller/mini/network.lua index d42d31d585..4f9c4152da 100644 --- a/modules/admin-mini/luasrc/controller/mini/network.lua +++ b/modules/admin-mini/luasrc/controller/mini/network.lua @@ -20,4 +20,5 @@ function index() 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 diff --git a/modules/admin-mini/luasrc/model/cbi/mini-network/basic.lua b/modules/admin-mini/luasrc/model/cbi/mini-network/basic.lua index c972eef7f9..d7c1ce84b1 100644 --- a/modules/admin-mini/luasrc/model/cbi/mini-network/basic.lua +++ b/modules/admin-mini/luasrc/model/cbi/mini-network/basic.lua @@ -17,9 +17,9 @@ m = Map("network", "Network") 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 @@ -53,13 +53,13 @@ pwd = s:option(Value, "password", translate("password")) 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 @@ -68,7 +68,7 @@ srv = s:option(Value, "server", "PPTP-Server") 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") diff --git a/modules/admin-mini/luasrc/model/cbi/mini-network/dhcp.lua b/modules/admin-mini/luasrc/model/cbi/mini-network/dhcp.lua new file mode 100644 index 0000000000..5a27f1e68b --- /dev/null +++ b/modules/admin-mini/luasrc/model/cbi/mini-network/dhcp.lua @@ -0,0 +1,65 @@ +--[[ +LuCI - Lua Configuration Interface + +Copyright 2008 Steven Barth +Copyright 2008 Jo-Philipp Wich + +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 -- cgit v1.2.3