diff options
Diffstat (limited to 'applications/luci-app-shadowsocks-libev/htdocs/luci-static/resources/view/shadowsocks-libev/servers.js')
-rw-r--r-- | applications/luci-app-shadowsocks-libev/htdocs/luci-static/resources/view/shadowsocks-libev/servers.js | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/applications/luci-app-shadowsocks-libev/htdocs/luci-static/resources/view/shadowsocks-libev/servers.js b/applications/luci-app-shadowsocks-libev/htdocs/luci-static/resources/view/shadowsocks-libev/servers.js new file mode 100644 index 0000000000..d46bfb0aa7 --- /dev/null +++ b/applications/luci-app-shadowsocks-libev/htdocs/luci-static/resources/view/shadowsocks-libev/servers.js @@ -0,0 +1,37 @@ +'use strict'; +'require form'; +'require shadowsocks-libev as ss'; + +function startsWith(str, search) { + return str.substring(0, search.length) === search; +} + +return L.view.extend({ + render: function() { + var m, s, o; + + m = new form.Map('shadowsocks-libev', _('Remote Servers'), + _('Definition of remote shadowsocks servers. \ + Disable any of them will also disable instances referring to it.')); + + s = m.section(form.GridSection, 'server'); + s.addremove = true; + + o = s.option(form.Flag, 'disabled', _('Disable')); + o.editable = true; + + ss.options_server(s); + + return m.render(); + }, + addFooter: function() { + var p = '#edit='; + if (startsWith(location.hash, p)) { + var section_id = location.hash.substring(p.length); + var editBtn = document.querySelector('#cbi-shadowsocks-libev-' + section_id + ' button.cbi-button-edit'); + if (editBtn) + editBtn.click(); + } + return this.super('addFooter', arguments); + } +}); |