summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--core/src/ffluci/sgi/haserl.lua2
-rw-r--r--core/src/ffluci/sgi/webuci.lua2
-rw-r--r--module/admin-core/src/controller/admin/uci.lua24
3 files changed, 16 insertions, 12 deletions
diff --git a/core/src/ffluci/sgi/haserl.lua b/core/src/ffluci/sgi/haserl.lua
index 041cffc703..76dc3854af 100644
--- a/core/src/ffluci/sgi/haserl.lua
+++ b/core/src/ffluci/sgi/haserl.lua
@@ -31,7 +31,7 @@ FORM = FORM or {}
-- HTTP interface
-- Returns a table of all COOKIE, GET and POST Parameters
-function ffluci.http.formvalues(prefix)
+function ffluci.http.formvalues()
return FORM
end
diff --git a/core/src/ffluci/sgi/webuci.lua b/core/src/ffluci/sgi/webuci.lua
index 05348e44d1..2977802959 100644
--- a/core/src/ffluci/sgi/webuci.lua
+++ b/core/src/ffluci/sgi/webuci.lua
@@ -28,7 +28,7 @@ module("ffluci.sgi.webuci", package.seeall)
-- HTTP interface
-- Returns a table of all COOKIE, GET and POST Parameters
-function ffluci.http.formvalues(prefix)
+function ffluci.http.formvalues()
return webuci.vars
end
diff --git a/module/admin-core/src/controller/admin/uci.lua b/module/admin-core/src/controller/admin/uci.lua
index 5c34e56d38..cb4a95ba5c 100644
--- a/module/admin-core/src/controller/admin/uci.lua
+++ b/module/admin-core/src/controller/admin/uci.lua
@@ -8,25 +8,29 @@ function action_apply()
local output = ""
if changes then
- local apply = {}
+ local com = {}
+ local run = {}
-- Collect files to be applied and commit changes
for i, line in ipairs(ffluci.util.split(changes)) do
local r = line:match("^-?([^.]+)")
- if r and not ffluci.util.contains(apply, ffluci.config.uci_oncommit[r]) then
- table.insert(apply, ffluci.config.uci_oncommit[r])
- ffluci.model.uci.commit(r)
+ if r then
+ com[r] = true
+
+ if ffluci.config.uci_oncommit and ffluci.config.uci_oncommit[r] then
+ run[ffluci.config.uci_oncommit[r]] = true
+ end
end
end
+ -- Apply
+ for config, i in pairs(com) do
+ ffluci.model.uci.commit(config)
+ end
-- Search for post-commit commands
- if ffluci.config.uci_oncommit then
- for i, cmd in ipairs(apply) do
- if cmd then
- output = output .. cmd .. ":" .. ffluci.sys.exec(cmd) .. "\n"
- end
- end
+ for cmd, i in pairs(run) do
+ output = output .. cmd .. ":" .. ffluci.sys.exec(cmd) .. "\n"
end
end