diff options
author | Jo-Philipp Wich <jo@mein.io> | 2018-05-18 16:44:33 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-18 16:44:33 +0200 |
commit | 828202ef5237f48e6f53d15ca198e2c6815b7cd7 (patch) | |
tree | a59276e5df1ebe77edca65b06b2a3b72f10ba70c /modules/luci-base/luasrc/cbi.lua | |
parent | 80cb4fef8c7db0dadc373fef122d7abb092a7191 (diff) | |
parent | 9f796fad3a0cc89df57d4e27ef6d7223a093071c (diff) |
Merge pull request #1769 from jow-/master
UCI apply/rollback workflow
Diffstat (limited to 'modules/luci-base/luasrc/cbi.lua')
-rw-r--r-- | modules/luci-base/luasrc/cbi.lua | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/modules/luci-base/luasrc/cbi.lua b/modules/luci-base/luasrc/cbi.lua index 2184395039..4728642118 100644 --- a/modules/luci-base/luasrc/cbi.lua +++ b/modules/luci-base/luasrc/cbi.lua @@ -388,21 +388,21 @@ function Map.parse(self, readinput, ...) if self.save then self:_run_hooks("on_save", "on_before_save") + local i, config for i, config in ipairs(self.parsechain) do self.uci:save(config) end self:_run_hooks("on_after_save") if (not self.proceed and self.flow.autoapply) or luci.http.formvalue("cbi.apply") then self:_run_hooks("on_before_commit") - for i, config in ipairs(self.parsechain) do - self.uci:commit(config) - - -- Refresh data because commit changes section names - self.uci:load(config) + if self.apply_on_parse == false then + for i, config in ipairs(self.parsechain) do + self.uci:commit(config) + end end self:_run_hooks("on_commit", "on_after_commit", "on_before_apply") - if self.apply_on_parse then - self.uci:apply(self.parsechain) + if self.apply_on_parse == true or self.apply_on_parse == false then + self.uci:apply(self.apply_on_parse) self:_run_hooks("on_apply", "on_after_apply") else -- This is evaluated by the dispatcher and delegated to the |