parent
b901e29c0c
commit
248a8ec158
@ -2,9 +2,11 @@ local api = require "luci.passwall.api"
|
||||
local appname = "passwall"
|
||||
|
||||
m = Map(appname)
|
||||
m.redirect = api.url("acl")
|
||||
api.set_apply_on_parse(m)
|
||||
|
||||
if not arg[1] or not m:get(arg[1]) then
|
||||
luci.http.redirect(api.url("acl"))
|
||||
luci.http.redirect(m.redirect)
|
||||
end
|
||||
|
||||
local fs = api.fs
|
||||
|
@ -2,10 +2,11 @@ local api = require "luci.passwall.api"
|
||||
local appname = "passwall"
|
||||
|
||||
m = Map(appname, translate("Node Config"))
|
||||
m.redirect = api.url()
|
||||
m.redirect = api.url("node_list")
|
||||
api.set_apply_on_parse(m)
|
||||
|
||||
if not arg[1] or not m:get(arg[1]) then
|
||||
luci.http.redirect(api.url("node_list"))
|
||||
luci.http.redirect(m.redirect)
|
||||
end
|
||||
|
||||
s = m:section(NamedSection, arg[1], "nodes", "")
|
||||
|
@ -144,6 +144,7 @@ s.sortable = true
|
||||
s.template = "cbi/tblsection"
|
||||
s.extedit = api.url("node_subscribe_config", "%s")
|
||||
function s.create(e, t)
|
||||
m.no_commit = true
|
||||
local id = TypedSection.create(e, t)
|
||||
luci.http.redirect(e.extedit:format(id))
|
||||
end
|
||||
|
@ -1,4 +1,5 @@
|
||||
local api = require "luci.passwall.api"
|
||||
local uci = require "luci.model.uci".cursor()
|
||||
local appname = "passwall"
|
||||
|
||||
m = Map(appname)
|
||||
@ -8,6 +9,25 @@ if not arg[1] or not m:get(arg[1]) then
|
||||
luci.http.redirect(m.redirect)
|
||||
end
|
||||
|
||||
function m.commit_handler(self)
|
||||
self:del(arg[1], "md5")
|
||||
end
|
||||
|
||||
if api.is_js_luci() then
|
||||
m.apply_on_parse = false
|
||||
m.on_after_apply = function(self)
|
||||
uci:delete(appname, arg[1], "md5")
|
||||
uci:commit(appname)
|
||||
luci.http.write([[
|
||||
<script type="text/javascript">
|
||||
setTimeout(function() {
|
||||
window.location.href = ']] .. self.redirect .. [[';
|
||||
}, 1000);
|
||||
</script>
|
||||
]])
|
||||
end
|
||||
end
|
||||
|
||||
local has_ss = api.is_finded("ss-redir")
|
||||
local has_ss_rust = api.is_finded("sslocal")
|
||||
local has_trojan_plus = api.is_finded("trojan-plus")
|
||||
@ -55,10 +75,6 @@ s = m:section(NamedSection, arg[1])
|
||||
s.addremove = false
|
||||
s.dynamic = false
|
||||
|
||||
function m.commit_handler(self)
|
||||
self:del(arg[1], "md5")
|
||||
end
|
||||
|
||||
o = s:option(Value, "remark", translate("Subscribe Remark"))
|
||||
o.rmempty = false
|
||||
|
||||
|
@ -2,9 +2,11 @@ local api = require "luci.passwall.api"
|
||||
local appname = "passwall"
|
||||
|
||||
m = Map(appname)
|
||||
m.redirect = api.url()
|
||||
api.set_apply_on_parse(m)
|
||||
|
||||
if not arg[1] or not m:get(arg[1]) then
|
||||
luci.http.redirect(api.url())
|
||||
luci.http.redirect(m.redirect)
|
||||
end
|
||||
|
||||
local has_singbox = api.finded_com("singbox")
|
||||
|
@ -4,6 +4,11 @@ local types_dir = "/usr/lib/lua/luci/model/cbi/passwall/server/type/"
|
||||
|
||||
m = Map("passwall_server", translate("Server Config"))
|
||||
m.redirect = api.url("server")
|
||||
api.set_apply_on_parse(m)
|
||||
|
||||
if not arg[1] or not m:get(arg[1]) then
|
||||
luci.http.redirect(m.redirect)
|
||||
end
|
||||
|
||||
s = m:section(NamedSection, arg[1], "user", "")
|
||||
s.addremove = false
|
||||
|
@ -38,6 +38,26 @@ function is_old_uci()
|
||||
return sys.call("grep 'require \"uci\"' /usr/lib/lua/luci/model/uci.lua >/dev/null 2>&1") == 0
|
||||
end
|
||||
|
||||
function set_apply_on_parse(map)
|
||||
if not map then
|
||||
return
|
||||
end
|
||||
if is_js_luci() then
|
||||
map.apply_on_parse = false
|
||||
map.on_after_apply = function(self)
|
||||
if self.redirect then
|
||||
luci.http.write([[
|
||||
<script type="text/javascript">
|
||||
setTimeout(function() {
|
||||
window.location.href = ']] .. self.redirect .. [[';
|
||||
}, 1000);
|
||||
</script>
|
||||
]])
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
function uci_save(cursor, config, commit, apply)
|
||||
if is_old_uci() then
|
||||
cursor:save(config)
|
||||
|
Loading…
Reference in New Issue
Block a user