EmbyCrackedClient/web/modules/sync/syncjobeditor.js

1 line
7.3 KiB
JavaScript
Raw Permalink Normal View History

2025-06-25 11:46:04 +08:00
import connectionManager from"./../emby-apiclient/connectionmanager.js";import globalize from"./../common/globalize.js";import layoutManager from"./../layoutmanager.js";import loading from"./../loading/loading.js";import dialogHelper from"./../dialoghelper/dialoghelper.js";import"./../emby-elements/emby-button/paper-icon-button-light.js";import"./../emby-elements/emby-button/emby-button.js";import"./../emby-elements/emby-scroller/emby-scroller.js";import"./../emby-elements/emby-itemscontainer/emby-itemscontainer.js";import"./../emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js";import serverNotifications from"./../common/input/api.js";import events from"./../emby-apiclient/events.js";import{appHost}from"./../common/servicelocator.js";import listView from"./../listview/listview.js";import dom from"./../dom.js";function syncNow(){require(["localsync"],function(localSync){localSync.sync()})}function renderJob(context,job,dialogOptions,originalOptions){Emby.importModule("./modules/sync/sync.js").then(function(syncDialog){syncDialog.renderForm({elem:context.querySelector(".syncJobFormContent"),dialogOptions:dialogOptions,dialogOptionsFn:getTargetDialogOptionsFn(dialogOptions),readOnlySyncTarget:!0,mode:originalOptions.mode}).then(function(){fillJobValues(context,job,dialogOptions)})})}function getTargetDialogOptionsFn(dialogOptions){return function(targetId){return Promise.resolve(dialogOptions)}}function triggerChange(select){select.dispatchEvent(new CustomEvent("change",{bubbles:!0}))}function fillJobValues(context,job,editOptions){var selectProfile=context.querySelector(".selectProfile"),selectProfile=(selectProfile&&(selectProfile.value=job.Profile||"",triggerChange(selectProfile)),context.querySelector(".selectQuality")),selectProfile=(selectProfile&&(selectProfile.value=job.Quality||"",triggerChange(selectProfile)),context.querySelector(".selectJobContainer")),selectProfile=(selectProfile&&(selectProfile.value=job.Container||"",triggerChange(selectProfile)),context.querySelector(".selectVideoCodec")),selectProfile=(selectProfile&&(selectProfile.value=job.VideoCodec||"",triggerChange(selectProfile)),context.querySelector(".selectAudioCodec")),selectProfile=(selectProfile&&(selectProfile.value=job.AudioCodec||"",triggerChange(selectProfile)),context.querySelector(".chkUnwatchedOnly")),selectProfile=(selectProfile&&(selectProfile.checked=job.UnwatchedOnly),context.querySelector(".chkSyncNewContent")),selectProfile=(selectProfile&&(selectProfile.checked=job.SyncNewContent),context.querySelector(".txtItemLimit")),selectProfile=(selectProfile&&(selectProfile.value=job.ItemLimit),context.querySelector(".txtBitrate")),selectProfile=(job.Bitrate?selectProfile.value=job.Bitrate/1e6:selectProfile.value="",editOptions.Targets.filter(function(t){return t.Id===job.TargetId})[0]),editOptions=selectProfile?selectProfile.Name:"",selectProfile=context.querySelector(".selectSyncTarget");selectProfile&&(selectProfile.value=editOptions)}function loadJob(context,id,apiClient,originalOptions){loading.show(),apiClient.getJSON(apiClient.getUrl("Sync/Jobs/"+id)).then(function(job){return apiClient.getJSON(apiClient.getUrl("Sync/Options",{UserId:job.UserId,ItemIds:job.RequestedItemIds&&job.RequestedItemIds.length?job.RequestedItemIds.join(""):null,ParentId:job.ParentId,Category:job.Category,TargetId:job.TargetId})).then(function(options){renderJob(context,job,options,originalOptions),loading.hide()})},function(error){loading.hide(),dialogHelper.close(context)})}function saveJob(context,id,apiClient){loading.show(),apiClient.getJSON(apiClient.getUrl("Sync/Jobs/"+id)).then(function(job){Emby.importModule("./modules/sync/sync.js").then(function(syncDialog){syncDialog.setJobValues(job,context),apiClient.ajax({url:apiClient.getUrl("Sync/Jobs/"+id),type:"POST",data:JSON.stringify(job),contentType:"application/json"}).then(function(){appHost.supports("sync")&&syncNow(),loading.hide(),dialogHelper.close(context)})})},function(error){loading.hide(),dialogHelper.close(context)})}function onItemsContainerUpgraded(){this.resume({refresh:!0})}fu