EmbyCrackedClient/web/components/accessschedule/accessschedule.js
2025-06-25 11:46:04 +08:00

1 line
No EOL
2.4 KiB
JavaScript

import globalize from"./../../modules/common/globalize.js";import dialogHelper from"./../../modules/dialoghelper/dialoghelper.js";import datetime from"./../../modules/common/datetime.js";import"./../../modules/emby-elements/emby-button/paper-icon-button-light.js";import"./../../modules/emby-elements/emby-select/emby-select.js";import"./../../modules/emby-elements/emby-dialogclosebutton/emby-dialogclosebutton.js";function showAlert(options){return Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function getDisplayTime(hours){let minutes=0;var pct=hours%1;return pct&&(minutes=parseInt(60*pct)),datetime.getDisplayTime(new Date(2e3,1,1,hours,minutes,0,0))}function populateHours(context){let html="";for(let i=0;i<24;i++)html+='<option value="'+i+'">'+getDisplayTime(i)+"</option>";html+='<option value="24">'+getDisplayTime(0)+"</option>",context.querySelector(".selectStart").innerHTML=html,context.querySelector(".selectEnd").innerHTML=html}function loadSchedule(context,schedule){context.querySelector(".selectDay").value=schedule.DayOfWeek||"Sunday",context.querySelector(".selectStart").value=schedule.StartHour||0,context.querySelector(".selectEnd").value=schedule.EndHour||0}function submitSchedule(context,options){var updatedSchedule={DayOfWeek:context.querySelector(".selectDay").value,StartHour:context.querySelector(".selectStart").value,EndHour:context.querySelector(".selectEnd").value};parseFloat(updatedSchedule.StartHour)>=parseFloat(updatedSchedule.EndHour)?showAlert(globalize.translate("ErrorMessageStartHourGreaterThanEnd")):(context.submitted=!0,options.schedule=Object.assign(options.schedule,updatedSchedule),dialogHelper.close(context))}require(["formDialogStyle"]);export default{show:function(options){return new Promise(function(resolve,reject){var xhr=new XMLHttpRequest;xhr.open("GET","components/accessschedule/accessschedule.template.html",!0),xhr.onload=function(e){var template=this.response;let dlg=dialogHelper.createDialog({removeOnClose:!0,size:"small"});dlg.classList.add("formDialog");var html="";html+=globalize.translateDocument(template),dlg.innerHTML=html,populateHours(dlg),loadSchedule(dlg,options.schedule),dialogHelper.open(dlg),dlg.addEventListener("close",function(){dlg.submitted?resolve(options.schedule):reject()}),dlg.querySelector("form").addEventListener("submit",function(e){return submitSchedule(dlg,options),e.preventDefault(),!1})},xhr.send()})}};