X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=blobdiff_plain;f=modules%2Fadmin-full%2Fluasrc%2Fmodel%2Fcbi%2Fadmin_network%2Fifaces.lua;h=bea425d7234776db42e10b82d3abdc2a4d71b258;hp=2851f3ad5447764f5eb88ee9c415a926a233598f;hb=e72a526984982f6fa2b6f2ed5ce01523094bfe43;hpb=97ff4a156ff1aa6a4d2ab65ab13d12b4eb2651e2 diff --git a/modules/admin-full/luasrc/model/cbi/admin_network/ifaces.lua b/modules/admin-full/luasrc/model/cbi/admin_network/ifaces.lua index 2851f3ad5..bea425d72 100644 --- a/modules/admin-full/luasrc/model/cbi/admin_network/ifaces.lua +++ b/modules/admin-full/luasrc/model/cbi/admin_network/ifaces.lua @@ -14,8 +14,14 @@ $Id$ m = Map("network", translate("interfaces"), translate("a_n_ifaces1")) s = m:section(TypedSection, "interface", "") -s.addremove = true -s:exclude("loopback") +function s.filter(section) + return section ~= "loopback" and (not arg or #arg == 0 or + luci.util.contains(arg, section)) +end + +if not arg or #arg == 0 then + s.addremove = true +end s:depends("proto", "static") s:depends("proto", "dhcp") @@ -28,16 +34,37 @@ br = s:option(Flag, "type", translate("a_n_i_bridge"), translate("a_n_i_bridge1" br.enabled = "bridge" br.rmempty = true -s:option(Value, "ifname", translate("interface")) +ifname = s:option(Value, "ifname", translate("interface")) +ifname.rmempty = true +for i,d in ipairs(luci.sys.net.devices()) do + if d ~= "lo" then + ifname:value(d) + end +end -s:option(Value, "ipaddr", translate("ipaddress")) +ipaddr = s:option(Value, "ipaddr", translate("ipaddress")) +ipaddr.rmempty = true +ipaddr:depends("proto", "static") -s:option(Value, "netmask", translate("netmask")):depends("proto", "static") +nm = s:option(Value, "netmask", translate("netmask")) +nm.rmempty = true +nm:depends("proto", "static") +nm:value("255.255.255.0") +nm:value("255.255.0.0") +nm:value("255.0.0.0") gw = s:option(Value, "gateway", translate("gateway")) gw:depends("proto", "static") gw.rmempty = true +ip6addr = s:option(Value, "ip6addr", translate("ip6address"), translate("cidr6")) +ip6addr.rmempty = true +ip6addr:depends("proto", "static") + +ip6gw = s:option(Value, "ip6gw", translate("gateway6")) +ip6gw:depends("proto", "static") +ip6gw.rmempty = true + dns = s:option(Value, "dns", translate("dnsserver")) dns:depends("proto", "static") dns.optional = true