openwrt-bgme-feed/luci-app-fakehttp/htdocs/luci-static/resources/view/fakehttp.js

75 lines
1.7 KiB
JavaScript

"use strict";
"require view";
"require form";
"require uci";
"require tools.widgets as widgets";
const conf = "fakehttp";
const instance = "fakehttp";
return view.extend({
load: function () {
return Promise.all([uci.load(conf)]);
},
render: function (res) {
let m, s, o;
m = new form.Map(
"fakehttp",
_("FakeHTTP"),
_("Obfuscate all your TCP connections into HTTP protocol.")
);
// General Settings
s = m.section(form.TypedSection, "globals", _("General Settings"));
s.anonymous = true;
o = s.option(form.Flag, "enabled", _("Enable"));
o.default = 0;
o.rmempty = false;
o = s.option(form.Flag, "silent", _("Enable silent mode"));
o.default = 1;
o.rmempty = false;
o = s.option(
widgets.DeviceSelect,
"interface",
_("Interfaces"),
_("work on specified network interface")
);
o.multiple = true;
o.nocreate = true;
o.rmempty = false;
// Payload Settings
s = m.section(form.GridSection, "payload", _("Payload Settings"));
s.addremove = true;
s.anonymous = true;
s.sortable = true;
s.nodescriptions = true;
o = s.option(form.Flag, "enabled", _("Enable"));
o.default = 0;
o.editable = true;
o.rmempty = false;
o = s.option(form.ListValue, "type", _("Type"));
o.value("http", "HTTP");
o.value("https", "HTTPS");
o.value("binary", "Binary");
o.editable = true;
o.rmempty = false;
o = s.option(form.Value, "payload", _("Payload"));
o.editable = true;
o.rmempty = false;
o = s.option(form.Value, "comment", _("Comment"));
o.editable = true;
o.default = "";
return m.render();
},
});