EmbyCrackedClient/web/modules/genericui/genericui.js

1 line
13 KiB
JavaScript
Raw Permalink Normal View History

2025-06-25 11:46:04 +08:00
import connectionManager from"./../emby-apiclient/connectionmanager.js";import BaseSettingsView from"./../viewmanager/basesettingsview.js";import"./../emby-elements/emby-button/emby-button.js";import"./../emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js";import appHeader from"./../appheader/appheader.js";import globalize from"./../common/globalize.js";import layoutManager from"./../layoutmanager.js";import genericedit from"./../genericedit/genericedit.js";import loading from"./../loading/loading.js";import dialogHelper from"./../dialoghelper/dialoghelper.js";import events from"./../emby-apiclient/events.js";import serverNotifications from"./../common/input/api.js";import responseHelper from"./../common/responsehelper.js";import mainTabsManager from"./../maintabsmanager.js";import"./../emby-elements/emby-scroller/emby-scroller.js";import focusManager from"./../focusmanager.js";require(["css!modules/genericui/genericui.css"]);let infoChangedEventName="UIPageInfoChanged",currentViewData,currentPage,currentDlg,isDataValid;function showConfirm(options){return Emby.importModule("./modules/common/dialogs/confirm.js").then(function(confirm){return confirm(options)})}function dashboardConfirm(message,title,callback){showConfirm(message,title).then(function(){callback(!0)},function(){callback(!1)})}function postCommand(pageId,commandId,data,itemId){var apiClient=connectionManager.currentApiClient(),url=apiClient.getUrl("UI/Command");return apiClient.ajax({type:"POST",url:url,data:JSON.stringify({PageId:pageId,CommandId:commandId,Data:data,ItemId:itemId,ClientLocale:globalize.getCurrentLocale()}),contentType:"application/json",dataType:"json"})}function onServerEvent(e,apiClient,updatedData){var mainContent;e.type===infoChangedEventName&&currentViewData&&updatedData&&updatedData.PageId===currentViewData.PageId&&(updatedData.ViewId===currentViewData.ViewId?updatedData.IsPageChangeInfo||(currentViewData=updatedData,mainContent=(e=currentDlg||currentPage).querySelector(".mainContent"),updatePageData(updatedData,e,updatedData.EditObjectContainer,mainContent,currentViewData.EditObjectContainer.Object,currentViewData.EditObjectContainer.DefaultObject)):updatedData.IsPageChangeInfo&&showStage(updatedData,currentPage))}function onInvalid(e){null!==e.target.offsetParent&&(isDataValid=!1)}function onButtonClick(e){let button=e.target.closest("BUTTON");if(button||(button=e.target.closest("INPUT"))&&!button.getAttribute("data-data1")&&(button=null),e.Data1||button&&!button.hasAttribute("disabled")){e.preventDefault();let commandId=e.Data1||(button?button.getAttribute("data-data1"):null),itemId=e.Data2||(button?button.getAttribute("data-data2"):null);var confirmationPrompt=e.ConfirmationPrompt||(button?button.getAttribute("data-prompt"):null),caption=e.Caption||(button?button.getAttribute("data-caption"):"");if(commandId){e.stopPropagation();let data=null;if(!genericedit.runCommand(commandId,(currentDlg||currentPage).querySelector(".mainContent"),itemId)){if(currentViewData.EditObjectContainer){e=(currentDlg||currentPage).querySelector(".mainContent");if(genericedit.getItemValues(currentViewData.EditObjectContainer,e),data=JSON.stringify(currentViewData.EditObjectContainer.Object),"WizardNext"===commandId||"WizardFinish"===commandId||"DialogOk"===commandId||"PageSave"===commandId){e=e.closest("FORM");if(e&&(isDataValid=!0,e.reportValidity(),!isDataValid||!1===currentViewData.EditObjectContainer.isDataValid))return}}confirmationPrompt?dashboardConfirm(confirmationPrompt,caption,wrapRunCommand):wrapRunCommand(!0)}function wrapRunCommand(run){run&&runUiCommand(currentViewData.PageId,currentViewData.ViewType,commandId,data,itemId).then(function(){},responseHelper.handleErrorResponse)}}}}function formatDescription(description){return description&&0!==description.length?description.split("\n").join("<br />"):null}function updatePageData(stage,page,container,htmlElement){genericedit.setFormValues(container,htmlElement);var container=page.querySelector(".mainTitle"),htmlElement=(container&&(container.innerHTML=stage.Caption),page.querySe