import BaseSettingsView from "./../modules/viewmanager/basesettingsview.js"; import "./../modules/emby-elements/emby-input/emby-input.js"; import "./../modules/emby-elements/emby-button/emby-button.js"; import globalize from "./../modules/common/globalize.js"; import loading from "./../modules/loading/loading.js"; import registrationServices from "./../modules/registrationservices/registrationservices.js"; import confirm from "./../modules/common/dialogs/confirm.js"; import connectionManager from "./../modules/emby-apiclient/connectionmanager.js"; import "./../modules/listview/listview.js"; import prompt from "./../modules/prompt/prompt.js"; function showToast(options) { return Emby.importModule("./modules/toast/toast.js").then(function (toast) { return toast(options); }); } function showAlert(options) { return Emby.importModule("./modules/common/dialogs/alert.js").then(function ( alert ) { return alert(options); }); } function getPluginSecurityInfo() { var apiClient = ApiClient; return apiClient.getJSON(apiClient.getUrl("Plugins/SecurityInfo")); } function load(page) { return ( loading.show(), getPluginSecurityInfo().then(function (info) { return ( (page.querySelector(".txtSupporterKey").value = info.SupporterKey || ""), info.SupporterKey && !info.IsMBSupporter ? (page .querySelector(".txtSupporterKey") .classList.add("invalidEntry"), page.querySelector(".notSupporter").classList.remove("hide")) : (page .querySelector(".txtSupporterKey") .classList.remove("invalidEntry"), page.querySelector(".notSupporter").classList.add("hide")), info.IsMBSupporter ? (page.querySelector(".supporterContainer").classList.add("hide"), getPremiereStatus(info.SupporterKey).then(function (statusInfo) { if (statusInfo) { let statusLine; var indicator = page.querySelector( ".status-indicator .statusIcon" ), extendedPlans = page.querySelector(".extended-plans"); switch ( ((extendedPlans.innerHTML = globalize.translate( "MessagePremiereExtendedPlans", '', "" )), statusInfo.deviceStatus) ) { case 2: (statusLine = globalize.translate( "MessagePremiereStatusOver", statusInfo.planType )), indicator.classList.add("expiredBackground"), indicator.classList.remove("nearExpiredBackground"), (indicator.innerHTML = ""), indicator.classList.add("autortl"), extendedPlans.classList.remove("hide"); break; case 1: (statusLine = globalize.translate( "MessagePremiereStatusClose", statusInfo.planType )), indicator.classList.remove("expiredBackground"), indicator.classList.add("nearExpiredBackground"), (indicator.innerHTML = ""), indicator.classList.add("autortl"), extendedPlans.classList.remove("hide"); break; default: (statusLine = globalize.translate( "MessagePremiereStatusGood", statusInfo.planType )), indicator.classList.remove("expiredBackground"), indicator.classList.remove("nearExpiredBackground"), (indicator.innerHTML = ""), indicator.classList.remove("autortl"), extendedPlans.classList.add("hide"); } page.querySelector(".premiere-status").innerHTML = statusLine; var sub, subsElement = page.querySelector(".premiere-subs"); statusInfo.subscriptions && 0 < statusInfo.subscriptions.length ? ((page.querySelector(".premiere-subs-content").innerHTML = getSubscriptionHtml( statusInfo.subscriptions, info.SupporterKey )), (sub = page.querySelector(".lnkSubscription")) && sub.addEventListener("click", cancelSub), subsElement.classList.remove("hide")) : subsElement.classList.add("hide"), page.querySelector(".isSupporter").classList.remove("hide"); } loading.hide(); })) : (page.querySelector(".supporterContainer").classList.remove("hide"), page.querySelector(".isSupporter").classList.add("hide"), loading.hide(), Promise.resolve()) ); }) ); } function getPremiereStatus(key) { /*see u later key = "key=" + key + "&serverId=" + ApiClient.serverId(); return fetch("https://mb3admin.com/admin/service/registration/getStatus", { method: "POST", body: key, headers: { "Content-Type": "application/x-www-form-urlencoded" }, }).then(function (response) { return response.json(); });*/ return Promise.resolve({ deviceStatus: "", planType: "Lifetime", subscriptions: {} }); } function getSubscriptionHtml(subs, key) { return subs.map(function (item) { var itemHtml = "", makeLink = item.autoRenew && "Stripe" === item.store, tagName = makeLink ? "button" : "div"; return ( itemHtml + (("button" == tagName ? '