Jackett/src/Jackett/Content/setup_indexer.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>