luci-app-shadowsocks-libev: move plugin options to server sections
In this change, plugin options are moved from component settings to only server settings. This should make the configuration easier. And it will be less error-prone as it's impossible now for users to inconsisitent plugin settings for instances referring to the same remote server Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
This commit is contained in:
parent
6b7afabcdd
commit
62d8a4fdd7
3 changed files with 20 additions and 11 deletions
|
@ -27,7 +27,7 @@ ss.option_install_package(s, "general")
|
|||
ss.options_common(s, "advanced")
|
||||
|
||||
if stype == "ss_server" then
|
||||
ss.options_server(s, "general")
|
||||
ss.options_server(s, {tab="general"})
|
||||
o = s:taboption("general", Value, "bind_address",
|
||||
translate("Bind address"),
|
||||
translate("The address ss-server will initiate connection from"))
|
||||
|
|
|
@ -19,13 +19,18 @@ if sname then
|
|||
end
|
||||
s = m:section(NamedSection, sname, "server")
|
||||
m.title = m.title .. ' - ' .. sname
|
||||
opts = {}
|
||||
else
|
||||
s = m:section(TypedSection, "server")
|
||||
s.template = 'cbi/tblsection'
|
||||
s.addremove = true
|
||||
s.extedit = function(self, section)
|
||||
return 'servers/' .. section
|
||||
end
|
||||
opts = {row=true}
|
||||
end
|
||||
|
||||
s:option(Flag, "disabled", translate("Disable"))
|
||||
ss.options_server(s)
|
||||
ss.options_server(s, opts)
|
||||
|
||||
return m
|
||||
|
|
|
@ -76,9 +76,11 @@ function options_client(s, tab)
|
|||
o.datatype = "port"
|
||||
end
|
||||
|
||||
function options_server(s, tab)
|
||||
function options_server(s, opts)
|
||||
local o
|
||||
local optfunc
|
||||
local tab = opts and opts.tab or nil
|
||||
local row = opts and opts.row or false
|
||||
|
||||
if tab == nil then
|
||||
optfunc = function(...) return s:option(...) end
|
||||
|
@ -96,13 +98,17 @@ function options_server(s, tab)
|
|||
for _, m in ipairs(methods) do
|
||||
o:value(m)
|
||||
end
|
||||
o = optfunc(Value, "key", translate("Key (base64)"))
|
||||
o.datatype = "base64"
|
||||
o.password = true
|
||||
o.size = 12
|
||||
o = optfunc(Value, "password", translate("Password"))
|
||||
o.password = true
|
||||
o.size = 12
|
||||
if not row then
|
||||
o = optfunc(Value, "key", translate("Key (base64)"))
|
||||
o.datatype = "base64"
|
||||
o.password = true
|
||||
o.size = 12
|
||||
optfunc(Value, "plugin", translate("Plugin"))
|
||||
optfunc(Value, "plugin_opts", translate("Plugin Options"))
|
||||
end
|
||||
end
|
||||
|
||||
function options_common(s, tab)
|
||||
|
@ -117,8 +123,6 @@ function options_common(s, tab)
|
|||
o.datatype = "uinteger"
|
||||
o = s:taboption(tab, Value, "timeout", translate("Timeout (sec)"))
|
||||
o.datatype = "uinteger"
|
||||
s:taboption(tab, Value, "plugin", translate("Plugin"))
|
||||
s:taboption(tab, Value, "plugin_opts", translate("Plugin Options"))
|
||||
s:taboption(tab, Value, "user", translate("Run as"))
|
||||
|
||||
s:taboption(tab, Flag, "verbose", translate("Verbose"))
|
||||
|
@ -213,6 +217,8 @@ names_options_server = {
|
|||
"method",
|
||||
"key",
|
||||
"password",
|
||||
"plugin",
|
||||
"plugin_opts",
|
||||
}
|
||||
|
||||
names_options_client = {
|
||||
|
@ -230,8 +236,6 @@ names_options_common = {
|
|||
"mode",
|
||||
"mtu",
|
||||
"timeout",
|
||||
"plugin",
|
||||
"plugin_opts",
|
||||
"user",
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue