modules/admin-full: various fixes in interface cbi model
This commit is contained in:
parent
3407c007d8
commit
0364054107
1 changed files with 17 additions and 17 deletions
|
@ -14,6 +14,7 @@ $Id$
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
local fs = require "nixio.fs"
|
local fs = require "nixio.fs"
|
||||||
|
local ut = require "luci.util"
|
||||||
local nw = require "luci.model.network"
|
local nw = require "luci.model.network"
|
||||||
local fw = require "luci.model.firewall"
|
local fw = require "luci.model.firewall"
|
||||||
|
|
||||||
|
@ -34,10 +35,16 @@ m:chain("wireless")
|
||||||
nw.init(m.uci)
|
nw.init(m.uci)
|
||||||
fw.init(m.uci)
|
fw.init(m.uci)
|
||||||
|
|
||||||
--function m.on_commit(map)
|
|
||||||
-- nw.init(map.uci)
|
local net = nw:get_network(arg[1])
|
||||||
-- fw.init(map.uci)
|
|
||||||
--end
|
-- redirect to overview page if network does not exist anymore (e.g. after a revert)
|
||||||
|
if not net then
|
||||||
|
luci.http.redirect(luci.dispatcher.build_url("admin/network/network"))
|
||||||
|
return
|
||||||
|
end
|
||||||
|
|
||||||
|
local ifc = net:get_interfaces()[1]
|
||||||
|
|
||||||
s = m:section(NamedSection, arg[1], "interface", translate("Common Configuration"))
|
s = m:section(NamedSection, arg[1], "interface", translate("Common Configuration"))
|
||||||
s.addremove = false
|
s.addremove = false
|
||||||
|
@ -86,7 +93,7 @@ br:depends("proto", "none")
|
||||||
|
|
||||||
stp = s:taboption("physical", Flag, "stp", translate("Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"),
|
stp = s:taboption("physical", Flag, "stp", translate("Enable <abbr title=\"Spanning Tree Protocol\">STP</abbr>"),
|
||||||
translate("Enables the Spanning Tree Protocol on this bridge"))
|
translate("Enables the Spanning Tree Protocol on this bridge"))
|
||||||
stp:depends("type", "1")
|
stp:depends("type", "bridge")
|
||||||
stp.rmempty = true
|
stp.rmempty = true
|
||||||
|
|
||||||
ifname_single = s:taboption("physical", Value, "ifname_single", translate("Interface"))
|
ifname_single = s:taboption("physical", Value, "ifname_single", translate("Interface"))
|
||||||
|
@ -113,7 +120,7 @@ function ifname_single.write(self, s, val)
|
||||||
n:del_interface(i)
|
n:del_interface(i)
|
||||||
end
|
end
|
||||||
|
|
||||||
for i in val:gmatch("%S+") do
|
for i in ut.imatch(val) do
|
||||||
n:add_interface(i)
|
n:add_interface(i)
|
||||||
|
|
||||||
-- if this is not a bridge, only assign first interface
|
-- if this is not a bridge, only assign first interface
|
||||||
|
@ -124,25 +131,16 @@ function ifname_single.write(self, s, val)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
ifname_multi = s:taboption("physical", Value, "ifname_multi", translate("Interface"))
|
||||||
ifname_multi = s:taboption("physical", MultiValue, "ifname_multi", translate("Interface"))
|
|
||||||
ifname_multi.template = "cbi/network_ifacelist"
|
ifname_multi.template = "cbi/network_ifacelist"
|
||||||
ifname_multi.nobridges = true
|
ifname_multi.nobridges = true
|
||||||
ifname_multi.network = arg[1]
|
ifname_multi.network = arg[1]
|
||||||
ifname_multi.widget = "checkbox"
|
ifname_multi.widget = "checkbox"
|
||||||
ifname_multi:depends("type", "1")
|
ifname_multi:depends("type", "bridge")
|
||||||
ifname_multi.cfgvalue = ifname_single.cfgvalue
|
ifname_multi.cfgvalue = ifname_single.cfgvalue
|
||||||
ifname_multi.write = ifname_single.write
|
ifname_multi.write = ifname_single.write
|
||||||
|
|
||||||
|
|
||||||
for _, d in ipairs(nw:get_interfaces()) do
|
|
||||||
if not d:is_bridge() then
|
|
||||||
ifname_single:value(d:name())
|
|
||||||
ifname_multi:value(d:name())
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
|
|
||||||
local fwd_to, fwd_from
|
local fwd_to, fwd_from
|
||||||
|
|
||||||
fwzone = s:taboption("firewall", Value, "_fwzone",
|
fwzone = s:taboption("firewall", Value, "_fwzone",
|
||||||
|
@ -225,6 +223,7 @@ dns:depends("peerdns", "")
|
||||||
mtu = s:taboption("physical", Value, "mtu", "MTU")
|
mtu = s:taboption("physical", Value, "mtu", "MTU")
|
||||||
mtu.optional = true
|
mtu.optional = true
|
||||||
mtu.datatype = "uinteger"
|
mtu.datatype = "uinteger"
|
||||||
|
mtu.placeholder = 1500
|
||||||
|
|
||||||
srv = s:taboption("general", Value, "server", translate("<abbr title=\"Point-to-Point Tunneling Protocol\">PPTP</abbr>-Server"))
|
srv = s:taboption("general", Value, "server", translate("<abbr title=\"Point-to-Point Tunneling Protocol\">PPTP</abbr>-Server"))
|
||||||
srv:depends("proto", "pptp")
|
srv:depends("proto", "pptp")
|
||||||
|
@ -248,6 +247,7 @@ mac = s:taboption("physical", Value, "macaddr", translate("<abbr title=\"Media A
|
||||||
mac:depends("proto", "none")
|
mac:depends("proto", "none")
|
||||||
mac:depends("proto", "static")
|
mac:depends("proto", "static")
|
||||||
mac:depends("proto", "dhcp")
|
mac:depends("proto", "dhcp")
|
||||||
|
mac.placeholder = ifc and ifc:mac():upper()
|
||||||
|
|
||||||
if has_3g then
|
if has_3g then
|
||||||
service = s:taboption("general", ListValue, "service", translate("Service type"))
|
service = s:taboption("general", ListValue, "service", translate("Service type"))
|
||||||
|
|
Loading…
Reference in a new issue