luci-app-dockerman: cbi/networks refactoring
Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
parent
7c784349b9
commit
630a66163a
1 changed files with 49 additions and 48 deletions
|
@ -3,8 +3,6 @@ LuCI - Lua Configuration Interface
|
||||||
Copyright 2019 lisaac <https://github.com/lisaac/luci-app-dockerman>
|
Copyright 2019 lisaac <https://github.com/lisaac/luci-app-dockerman>
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
require "luci.util"
|
|
||||||
local uci = luci.model.uci.cursor()
|
|
||||||
local docker = require "luci.model.docker"
|
local docker = require "luci.model.docker"
|
||||||
|
|
||||||
local m, s, o
|
local m, s, o
|
||||||
|
@ -53,72 +51,75 @@ m = SimpleForm("docker", translate("Docker"))
|
||||||
m.submit=false
|
m.submit=false
|
||||||
m.reset=false
|
m.reset=false
|
||||||
|
|
||||||
network_table = m:section(Table, network_list, translate("Networks"))
|
s = m:section(Table, network_list, translate("Networks"))
|
||||||
network_table.nodescr=true
|
s.nodescr=true
|
||||||
|
|
||||||
network_selecter = network_table:option(Flag, "_selected","")
|
o = s:option(Flag, "_selected","")
|
||||||
network_selecter.template = "dockerman/cbi/xfvalue"
|
o.template = "dockerman/cbi/xfvalue"
|
||||||
network_id = network_table:option(DummyValue, "_id", translate("ID"))
|
o.disabled = 0
|
||||||
network_selecter.disabled = 0
|
o.enabled = 1
|
||||||
network_selecter.enabled = 1
|
o.default = 0
|
||||||
network_selecter.default = 0
|
o.render = function(self, section, scope)
|
||||||
network_selecter.render = function(self, section, scope)
|
|
||||||
self.disable = 0
|
self.disable = 0
|
||||||
if network_list[section]["_name"] == "bridge" or network_list[section]["_name"] == "none" or network_list[section]["_name"] == "host" then
|
if network_list[section]["_name"] == "bridge" or network_list[section]["_name"] == "none" or network_list[section]["_name"] == "host" then
|
||||||
self.disable = 1
|
self.disable = 1
|
||||||
end
|
end
|
||||||
Flag.render(self, section, scope)
|
Flag.render(self, section, scope)
|
||||||
end
|
end
|
||||||
|
o.write = function(self, section, value)
|
||||||
network_name = network_table:option(DummyValue, "_name", translate("Network Name"))
|
|
||||||
network_driver = network_table:option(DummyValue, "_driver", translate("Driver"))
|
|
||||||
network_interface = network_table:option(DummyValue, "_interface", translate("Parent Interface"))
|
|
||||||
network_subnet = network_table:option(DummyValue, "_subnet", translate("Subnet"))
|
|
||||||
network_gateway = network_table:option(DummyValue, "_gateway", translate("Gateway"))
|
|
||||||
|
|
||||||
network_selecter.write = function(self, section, value)
|
|
||||||
network_list[section]._selected = value
|
network_list[section]._selected = value
|
||||||
end
|
end
|
||||||
|
|
||||||
docker_status = m:section(SimpleSection)
|
o = s:option(DummyValue, "_id", translate("ID"))
|
||||||
docker_status.template = "dockerman/apply_widget"
|
|
||||||
docker_status.err=docker:read_status()
|
o = s:option(DummyValue, "_name", translate("Network Name"))
|
||||||
docker_status.err=docker_status.err and docker_status.err:gsub("\n","<br>"):gsub(" "," ")
|
|
||||||
if docker_status.err then
|
o = s:option(DummyValue, "_driver", translate("Driver"))
|
||||||
|
|
||||||
|
o = s:option(DummyValue, "_interface", translate("Parent Interface"))
|
||||||
|
|
||||||
|
o = s:option(DummyValue, "_subnet", translate("Subnet"))
|
||||||
|
|
||||||
|
o = s:option(DummyValue, "_gateway", translate("Gateway"))
|
||||||
|
|
||||||
|
s = m:section(SimpleSection)
|
||||||
|
s.template = "dockerman/apply_widget"
|
||||||
|
s.err = docker:read_status()
|
||||||
|
s.err = s.err and s.err:gsub("\n","<br>"):gsub(" "," ")
|
||||||
|
if s.err then
|
||||||
docker:clear_status()
|
docker:clear_status()
|
||||||
end
|
end
|
||||||
|
|
||||||
action = m:section(Table,{{}})
|
s = m:section(Table,{{}})
|
||||||
action.notitle=true
|
s.notitle=true
|
||||||
action.rowcolors=false
|
s.rowcolors=false
|
||||||
action.template="cbi/nullsection"
|
s.template="cbi/nullsection"
|
||||||
|
|
||||||
btnnew=action:option(Button, "_new")
|
o = s:option(Button, "_new")
|
||||||
btnnew.inputtitle= translate("New")
|
o.inputtitle= translate("New")
|
||||||
btnnew.template = "dockerman/cbi/inlinebutton"
|
o.template = "dockerman/cbi/inlinebutton"
|
||||||
btnnew.notitle=true
|
o.notitle=true
|
||||||
btnnew.inputstyle = "add"
|
o.inputstyle = "add"
|
||||||
btnnew.forcewrite = true
|
o.forcewrite = true
|
||||||
btnnew.write = function(self, section)
|
o.write = function(self, section)
|
||||||
uci.http.redirect(luci.dispatcher.build_url("admin/docker/newnetwork"))
|
luci.http.redirect(luci.dispatcher.build_url("admin/docker/newnetwork"))
|
||||||
end
|
end
|
||||||
|
|
||||||
btnremove = action:option(Button, "_remove")
|
o = s:option(Button, "_remove")
|
||||||
btnremove.inputtitle= translate("Remove")
|
o.inputtitle= translate("Remove")
|
||||||
btnremove.template = "dockerman/cbi/inlinebutton"
|
o.template = "dockerman/cbi/inlinebutton"
|
||||||
btnremove.inputstyle = "remove"
|
o.inputstyle = "remove"
|
||||||
btnremove.forcewrite = true
|
o.forcewrite = true
|
||||||
btnremove.write = function(self, section)
|
o.write = function(self, section)
|
||||||
local network_selected = {}
|
local network_selected = {}
|
||||||
local network_name_selected = {}
|
local network_name_selected = {}
|
||||||
local network_driver_selected = {}
|
local network_driver_selected = {}
|
||||||
|
|
||||||
local network_table_sids = network_table:cfgsections()
|
for k in pairs(network_list) do
|
||||||
for _, network_table_sid in ipairs(network_table_sids) do
|
if network_list[k]._selected == 1 then
|
||||||
if network_list[network_table_sid]._selected == 1 then
|
network_selected[#network_selected + 1] = network_list[k]._id
|
||||||
network_selected[#network_selected+1] = network_list[network_table_sid]._id
|
network_name_selected[#network_name_selected + 1] = network_list[k]._name
|
||||||
network_name_selected[#network_name_selected+1] = network_list[network_table_sid]._name
|
network_driver_selected[#network_driver_selected + 1] = network_list[k]._driver
|
||||||
network_driver_selected[#network_driver_selected+1] = network_list[network_table_sid]._driver
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue