mirror of
https://github.com/znc/znc.git
synced 2026-08-06 17:03:14 +02:00
@@ -94,4 +94,71 @@ function make_sortable() {
|
||||
for (var i = 0; i < tables.length; i++) {
|
||||
make_sortable_table(tables[i]);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function serverlist_init($) {
|
||||
function serialize() {
|
||||
var text = "";
|
||||
$("#servers_tbody > tr").each(function() {
|
||||
var host = $(".servers_row_host", $(this)).val();
|
||||
var port = $(".servers_row_port", $(this)).val();
|
||||
var ssl = $(".servers_row_ssl", $(this)).is(":checked");
|
||||
var pass = $(".servers_row_pass", $(this)).val();
|
||||
if (host.length == 0) return;
|
||||
text += host;
|
||||
text += " ";
|
||||
if (ssl) text += "+";
|
||||
text += port;
|
||||
text += " ";
|
||||
text += pass;
|
||||
text += "\n";
|
||||
});
|
||||
$("#servers_text").val(text);
|
||||
}
|
||||
function add_row(host, port, ssl, pass) {
|
||||
var row = $("<tr/>");
|
||||
function delete_row() {
|
||||
row.remove();
|
||||
serialize();
|
||||
}
|
||||
row.append(
|
||||
$("<td/>").append($("<input/>").attr({"type":"text"})
|
||||
.addClass("servers_row_host").val(host)),
|
||||
$("<td/>").append($("<input/>").attr({"type":"number"})
|
||||
.addClass("servers_row_port").val(port)),
|
||||
$("<td/>").append($("<input/>").attr({"type":"checkbox"})
|
||||
.addClass("servers_row_ssl").prop("checked", ssl)),
|
||||
$("<td/>").append($("<input/>").attr({"type":"text"})
|
||||
.addClass("servers_row_pass").val(pass)),
|
||||
$("<td/>").append($("<input/>").attr({"type":"button"})
|
||||
.val("X").click(delete_row))
|
||||
);
|
||||
$("input", row).change(serialize);
|
||||
$("#servers_tbody").append(row);
|
||||
}
|
||||
|
||||
var servers_text = $("#servers_text").val();
|
||||
// Parse it
|
||||
$.each(servers_text.split("\n"), function(i, line) {
|
||||
if (line.length == 0) return;
|
||||
line = line.split(" ");
|
||||
var host = line[0];
|
||||
var port = line[1] || "6667";
|
||||
var pass = line[2] || "";
|
||||
var ssl;
|
||||
if (port.match(/^\+/)) {
|
||||
ssl = true;
|
||||
port = port.substr(1);
|
||||
} else {
|
||||
ssl = false;
|
||||
}
|
||||
add_row(host, port, ssl, pass);
|
||||
});
|
||||
$("#servers_add").click(function() {
|
||||
add_row("", 6697, true, "");
|
||||
// Not serializing, because empty host doesn't emit anything anyway
|
||||
});
|
||||
|
||||
$("#servers_plain").hide();
|
||||
$("#servers_js").show();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user