mirror of https://github.com/Jackett/Jackett
117 lines
3.6 KiB
HTML
117 lines
3.6 KiB
HTML
<!DOCTYPE html>
|
|
|
|
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<script src="jquery-2.1.3.min.js"></script>
|
|
<script src="common.js"></script>
|
|
<style>
|
|
#formItemTemplateContainer {
|
|
display: none;
|
|
}
|
|
</style>
|
|
<title></title>
|
|
</head>
|
|
<body>
|
|
<script>
|
|
|
|
$(function () {
|
|
|
|
var urlParams = getUrlParams();
|
|
|
|
var jqxhr = $.post("get_config_form", JSON.stringify({ indexer: urlParams.indexer }), function (data) {
|
|
populateForm(data.config);
|
|
})
|
|
.fail(function () {
|
|
alert("error");
|
|
});
|
|
|
|
$("#loginButton").click(function () {
|
|
var data = { indexer: urlParams.indexer, config: {} };
|
|
$("#formItems").children().each(function (i, item) {
|
|
var $item = $(item);
|
|
var type = $item.data("type");
|
|
var id = $item.data("id");
|
|
var $valEl = $item.find(".formItemValue").children().first();
|
|
switch (type) {
|
|
case "inputstring":
|
|
data.config[id] = $valEl.val();
|
|
break;
|
|
case "inputbool":
|
|
data.config[id] = $valEl.val();
|
|
break;
|
|
}
|
|
});
|
|
|
|
var jqxhr = $.post("configure_indexer", JSON.stringify(data), function (data) {
|
|
if (data.result == "error") {
|
|
if (data.config) {
|
|
populateForm(data.config);
|
|
}
|
|
alert(data.error);
|
|
|
|
}
|
|
})
|
|
.fail(function () {
|
|
alert("error");
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
function populateForm(data) {
|
|
$("#formItems").empty();
|
|
for (var i = 0; i < data.length; i++) {
|
|
$("#formItems").append(createFormItem(data[i]));
|
|
}
|
|
}
|
|
|
|
function createFormItem(itemData) {
|
|
var $template = $("#formItemTemplate").clone();
|
|
$template.attr("id", "item" + itemData.id);
|
|
$template.data("id", itemData.id);
|
|
$template.data("type", itemData.type);
|
|
$template.attr("data-type", itemData.type);
|
|
$template.data("value", itemData.value);
|
|
$template.find(".formItemName").text(itemData.name);
|
|
|
|
$valueElement = $template.find(".formItemValue");
|
|
|
|
switch (itemData.type) {
|
|
case "inputstring":
|
|
$valueElement.append($("<input type='text'></input>").val(itemData.value));
|
|
break;
|
|
case "inputbool":
|
|
$valueElement.append($("<input type='checkbox'></input>").prop("checked", itemData.value));
|
|
break;
|
|
case "displayimage":
|
|
$valueElement.append($("<img src='" + itemData.value + "'>"));
|
|
break;
|
|
case "displayinfo":
|
|
$valueElement.append($("<span></span>").text(itemData.value));
|
|
break;
|
|
}
|
|
|
|
return $template;
|
|
}
|
|
|
|
|
|
|
|
</script>
|
|
|
|
<div id="formItems">
|
|
|
|
</div>
|
|
|
|
<button id="loginButton">Login</button>
|
|
|
|
<div id="formItemTemplateContainer">
|
|
<div id="formItemTemplate">
|
|
<div class="formItemName"></div>
|
|
<div class="formItemValue"></div>
|
|
</div>
|
|
</div>
|
|
|
|
</body>
|
|
</html> |