1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00
jellyfin-web/src/dashboard/librarysettings.js

88 lines
3.2 KiB
JavaScript
Raw Normal View History

2018-10-23 01:05:09 +03:00
define(["jQuery", "loading", "libraryMenu", "fnchecked", "emby-checkbox", "emby-linkbutton"], function($, loading, libraryMenu) {
"use strict";
function loadPage(page, config) {
2019-03-05 21:30:06 +09:00
$("#chkSaveMetadataHidden", page).checked(config.SaveMetadataHidden);
loading.hide();
2018-10-23 01:05:09 +03:00
}
function loadMetadataConfig(page, config) {
2019-03-05 21:30:06 +09:00
$("#selectDateAdded", page).val(config.UseFileCreationTimeForDateAdded ? "1" : "0");
2018-10-23 01:05:09 +03:00
}
function loadFanartConfig(page, config) {
2019-03-05 21:30:06 +09:00
$("#txtFanartApiKey", page).val(config.UserApiKey || "");
2018-10-23 01:05:09 +03:00
}
function saveFanart(form) {
ApiClient.getNamedConfiguration("fanart").then(function(config) {
2019-03-05 21:30:06 +09:00
config.UserApiKey = $("#txtFanartApiKey", form).val(), ApiClient.updateNamedConfiguration("fanart", config);
});
2018-10-23 01:05:09 +03:00
}
function saveMetadata(form) {
ApiClient.getNamedConfiguration("metadata").then(function(config) {
2019-03-05 21:30:06 +09:00
config.UseFileCreationTimeForDateAdded = "1" === $("#selectDateAdded", form).val(), ApiClient.updateNamedConfiguration("metadata", config);
2018-10-23 01:05:09 +03:00
})
}
function alertText(options) {
require(["alert"], function(alert) {
2019-03-05 21:30:06 +09:00
alert(options);
});
2018-10-23 01:05:09 +03:00
}
function onSubmit() {
loading.show();
var form = this;
2019-03-05 21:30:06 +09:00
ApiClient.getServerConfiguration().then(function(config) {
config.SaveMetadataHidden = $("#chkSaveMetadataHidden", form).checked();
config.FanartApiKey = $("#txtFanartApiKey", form).val();
2019-03-05 21:40:26 +09:00
ApiClient.updateServerConfiguration(config).then(Dashboard.processServerConfigurationUpdateResult);
2019-03-05 21:30:06 +09:00
});
saveMetadata(form);
saveFanart(form);
return false;
2018-10-23 01:05:09 +03:00
}
function getTabs() {
return [{
href: "library.html",
name: Globalize.translate("HeaderLibraries")
}, {
href: "librarydisplay.html",
name: Globalize.translate("TabDisplay")
}, {
href: "metadataimages.html",
name: Globalize.translate("TabMetadata")
}, {
href: "metadatanfo.html",
name: Globalize.translate("TabNfoSettings")
}, {
href: "librarysettings.html",
name: Globalize.translate("TabAdvanced")
}]
}
2019-03-05 21:30:06 +09:00
2018-10-23 01:05:09 +03:00
return function(view, params) {
2019-03-05 21:30:06 +09:00
$(".librarySettingsForm").off("submit", onSubmit).on("submit", onSubmit);
view.addEventListener("viewshow", function() {
libraryMenu.setTabs("librarysetup", 4, getTabs);
loading.show();
2018-10-23 01:05:09 +03:00
var page = this;
ApiClient.getServerConfiguration().then(function(config) {
loadPage(page, config)
2019-03-05 21:30:06 +09:00
});
ApiClient.getNamedConfiguration("metadata").then(function(metadata) {
2018-10-23 01:05:09 +03:00
loadMetadataConfig(page, metadata)
2019-03-05 21:30:06 +09:00
});
ApiClient.getNamedConfiguration("fanart").then(function(metadata) {
2018-10-23 01:05:09 +03:00
loadFanartConfig(page, metadata)
2019-03-05 21:30:06 +09:00
});
ApiClient.getSystemInfo().then(function(info) {
2018-10-23 01:05:09 +03:00
"Windows" === info.OperatingSystem ? page.querySelector(".fldSaveMetadataHidden").classList.remove("hide") : page.querySelector(".fldSaveMetadataHidden").classList.add("hide")
2019-03-05 21:30:06 +09:00
});
});
2018-10-23 01:05:09 +03:00
}
});