diff options
Diffstat (limited to 'applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js')
-rw-r--r-- | applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js | 24 |
1 files changed, 23 insertions, 1 deletions
diff --git a/applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js b/applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js index c859aa177f..0999ba0294 100644 --- a/applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js +++ b/applications/luci-app-frpc/htdocs/luci-static/resources/view/frpc.js @@ -45,7 +45,7 @@ var baseProxyConf = [ [form.ListValue, 'type', _('Proxy type'), _('ProxyType specifies the type of this proxy. Valid values include "tcp", "udp", "http", "https", "stcp", and "xtcp".<br />By default, this value is "tcp".'), {values: ['tcp', 'udp', 'http', 'https', 'stcp', 'xtcp']}], [form.Flag, 'use_encryption', _('Encryption'), _('UseEncryption controls whether or not communication with the server will be encrypted. Encryption is done using the tokens supplied in the server and client configuration.<br />By default, this value is false.'), {datatype: 'bool'}], [form.Flag, 'use_compression', _('Compression'), _('UseCompression controls whether or not communication with the server will be compressed.<br />By default, this value is false.'), {datatype: 'bool'}], - [form.Value, 'local_ip', _('Local IP'), _('LocalIp specifies the IP address or host name to proxy to.'), {datatype: 'ipaddr'}], + [form.Value, 'local_ip', _('Local IP'), _('LocalIp specifies the IP address or host name to proxy to.'), {datatype: 'host'}], [form.Value, 'local_port', _('Local port'), _('LocalPort specifies the port to proxy to.'), {datatype: 'port'}], ]; @@ -72,6 +72,16 @@ var stcpProxyConf = [ [form.Value, 'sk', _('Sk')], ]; +var pluginConf = [ + [form.ListValue, 'plugin', _('Plugin'), undefined, {values: ['', 'http_proxy', 'socks5', 'unix_domain_socket'], rmempty: true}], + [form.Value, 'plugin_http_user', _('HTTP user'), undefined, {depends: {plugin: 'http_proxy'}}], + [form.Value, 'plugin_http_passwd', _('HTTP password'), undefined, {depends: {plugin: 'http_proxy'}}], + [form.Value, 'plugin_user', _('SOCKS5 user'), undefined, {depends: {plugin: 'socks5'}}], + [form.Value, 'plugin_passwd', _('SOCKS5 password'), undefined, {depends: {plugin: 'socks5'}}], + [form.Value, 'plugin_unix_path', _('Unix domain socket path'), undefined, {depends: {plugin: 'unix_domain_socket'}, optional: false, rmempty: false, + datatype: 'file', placeholder: '/var/run/docker.sock', default: '/var/run/docker.sock'}], +]; + function setParams(o, params) { if (!params) return; for (var key in params) { @@ -207,11 +217,20 @@ return view.extend({ s.tab('general', _('General Settings')); s.tab('http', _('HTTP Settings')); + s.tab('plugin', _('Plugin Settings')); s.option(form.Value, 'name', _('Proxy name')).modalonly = false; s.option(form.Value, 'type', _('Proxy type')).modalonly = false; s.option(form.Value, 'local_ip', _('Local IP')).modalonly = false; s.option(form.Value, 'local_port', _('Local port')).modalonly = false; + o = s.option(form.Value, 'remote_port', _('Remote port')); + o.modalonly = false; + o.depends('type', 'tcp'); + o.depends('type', 'udp'); + o.cfgvalue = function() { + var v = this.super('cfgvalue', arguments); + return v&&v!='0'?v:'#'; + }; defTabOpts(s, 'general', baseProxyConf, {modalonly: true}); @@ -227,6 +246,9 @@ return view.extend({ // STCP and XTCP defTabOpts(s, 'general', stcpProxyConf, {modalonly: true, depends: [{type: 'stcp'}, {type: 'xtcp'}]}); + // Plugin + defTabOpts(s, 'plugin', pluginConf, {modalonly: true}); + return m.render(); } }); |