From 76d3fcfbb6cb623da8589e462ae47ddb89c5b335 Mon Sep 17 00:00:00 2001 From: Claus Vium Date: Thu, 14 Feb 2019 18:59:52 +0100 Subject: [PATCH] Re-add configuration page for OpenSubtitles --- src/opensubtitles.html | 36 ++++++++++++++++++++++++++++++++++++ src/scripts/librarymenu.js | 5 +++++ src/scripts/opensubtitles.js | 36 ++++++++++++++++++++++++++++++++++++ src/scripts/site.js | 5 +++++ 4 files changed, 82 insertions(+) create mode 100644 src/opensubtitles.html create mode 100644 src/scripts/opensubtitles.js diff --git a/src/opensubtitles.html b/src/opensubtitles.html new file mode 100644 index 0000000000..33915b790d --- /dev/null +++ b/src/opensubtitles.html @@ -0,0 +1,36 @@ +
+ +
+ +
+ +
+ +
+ +
+ +
+ + +
+
+ + +
+ +
+ +
+ +
+ +
+
${SubtitleDownloadInstructions}
+
+
+ +
+
diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 18fafa8bf6..8d65f9420b 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -297,6 +297,11 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " icon: "swap_horiz", href: "encodingsettings.html", pageIds: ["encodingSettingsPage"] + }, { + name: "Open Subtitles", + href: "opensubtitles.html", + pageIds: ["openSubtitlesPage"], + icon: "closed_caption" }]; addPluginPagesToMainMenu(links, pluginItems, "server"); links.push({ diff --git a/src/scripts/opensubtitles.js b/src/scripts/opensubtitles.js new file mode 100644 index 0000000000..d06f8a44da --- /dev/null +++ b/src/scripts/opensubtitles.js @@ -0,0 +1,36 @@ +define(["loading", "fnchecked", "emby-linkbutton", "emby-input", "emby-checkbox", "emby-button"], function (loading) { + "use strict"; + + function loadPage(page, config) { + page.querySelector("#txtOpenSubtitleUsername").value = config.OpenSubtitlesUsername; + page.querySelector("#txtOpenSubtitlePassword").value = config.OpenSubtitlesPasswordHash || ""; + loading.hide(); + } + + function onSubmit(e__q) { + e__q.preventDefault(); + loading.show(); + var form = this; + ApiClient.getNamedConfiguration("subtitles").then(function (config) { + config.OpenSubtitlesUsername = form.querySelector("#txtOpenSubtitleUsername").value; + var newPassword = form.querySelector("#txtOpenSubtitlePassword").value; + + if (newPassword) { + config.OpenSubtitlesPasswordHash = newPassword; + } + + ApiClient.updateNamedConfiguration("subtitles", config).then(Dashboard.processServerConfigurationUpdateResult); + }); + return false; + } + + $(document).on("pageinit", "#openSubtitlesPage", function() { + $(".metadataSubtitlesForm").off("submit", onSubmit).on("submit", onSubmit) + }).on("pageshow", "#openSubtitlesPage", function() { + loading.show(); + var page = this; + ApiClient.getNamedConfiguration("subtitles").then(function (response) { + loadPage(page, response); + }); + }); +}); diff --git a/src/scripts/site.js b/src/scripts/site.js index 885529cdff..573464ec2c 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -512,6 +512,11 @@ var Dashboard = { dependencies: [], autoFocus: !1, roles: "admin" + }), defineRoute({ + path: "/opensubtitles.html", + dependencies: [], + autoFocus: !1, + roles: "admin" }), defineRoute({ path: "/forgotpassword.html", dependencies: ["emby-input", "emby-button"],