1 line
5.8 KiB
JavaScript
1 line
5.8 KiB
JavaScript
define(["exports","./../common/globalize.js","./../common/datetime.js","./../loading/loading.js","./../emby-apiclient/connectionmanager.js","./../emby-elements/emby-checkbox/emby-checkbox.js","./../emby-elements/emby-button/emby-button.js","./../emby-elements/emby-input/emby-input.js","./../emby-elements/emby-select/emby-select.js","./../common/usersettings/usersettings.js"],function(_exports,_globalize,_datetime,_loading,_connectionmanager,_embyCheckbox,_embyButton,_embyInput,_embySelect,_usersettings){var currentItemId,currentServerId;function renderTimer(context,item){var keyword,timerType=item.TimerType||"Program";"Keyword"===timerType&&(context.querySelector(".fldKeyword").classList.remove("hide"),context.querySelector(".txtKeyword").setAttribute("required","required"),context.querySelector(".fldKeywordType").classList.remove("hide"),context.querySelector(".selectKeywordType").setAttribute("required","required"),context.querySelector(".txtKeyword").setAttribute("required","required"),keyword=(item.Keywords||[])[0]||{},context.querySelector(".selectKeywordType").value=keyword.KeywordType||"Name",context.querySelector(".txtKeyword").value=keyword.Keyword||""),"Program"===timerType&&context.querySelector(".fldAirTime").classList.remove("hide"),context.querySelector(".txtPrePaddingMinutes").value=item.PrePaddingSeconds/60,context.querySelector(".txtPostPaddingMinutes").value=item.PostPaddingSeconds/60,context.querySelector(".txtMaxRecordingLength").value=(item.MaxRecordingSeconds||0)/60,context.querySelector(".selectAirTime").value=item.RecordAnyTime?"any":"original",context.querySelector(".selectShowType").value=item.RecordNewOnly?"new":"all",context.querySelector(".chkSkipEpisodesInLibrary").checked=item.SkipEpisodesInLibrary,context.querySelector(".selectKeepUpTo").value=item.KeepUpTo||0,context.querySelector(".optionAroundTime").innerHTML=_globalize.default.translate("AroundTime",_datetime.default.getDisplayTime(new Date(Date.parse(item.StartDate)))),context.querySelector(".selectAirDays").values=item.Days,context.querySelector(".selectChannels").values=!item.RecordAnyChannel&&item.ChannelIds||[],_loading.default.hide()}function getAirDaysItems(query){for(var date=new Date;0<date.getDay();)date.setDate(date.getDate()-1);for(var days=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],items=[],i=0,length=days.length;i<length;i++)items.push({Id:days[i],Name:_datetime.default.toLocaleDateString(date,{weekday:"long"})}),date.setDate(date.getDate()+1);var totalRecordCount=(items=query.Ids?items.filter(function(item){return query.Ids.includes(item.Id)}):items).length,items=items.slice(query.StartIndex||0);return query.StartIndex&&items.length>query.StartIndex&&(items.length=query.StartIndex),Promise.resolve({TotalRecordCount:totalRecordCount,Items:items})}function onSubmit(e){var form=this,apiClient=_connectionmanager.default.getApiClient(currentServerId);return apiClient.getLiveTvSeriesTimer(currentItemId).then(function(item){item.PrePaddingSeconds=60*form.querySelector(".txtPrePaddingMinutes").value,item.PostPaddingSeconds=60*form.querySelector(".txtPostPaddingMinutes").value,item.MaxRecordingSeconds=60*form.querySelector(".txtMaxRecordingLength").value,item.RecordAnyTime="any"===form.querySelector(".selectAirTime").value,item.RecordNewOnly="new"===form.querySelector(".selectShowType").value,item.SkipEpisodesInLibrary=form.querySelector(".chkSkipEpisodesInLibrary").checked,item.KeepUpTo=form.querySelector(".selectKeepUpTo").value,item.Days=form.querySelector(".selectAirDays").getValues(),item.RecordAnyChannel=0===form.querySelector(".selectChannels").getValues().length,item.ChannelIds=form.querySelector(".selectChannels").getValues(),item.TimerType?item.ChannelId=null:item.ChannelId=item.ChannelIds[0]||null,"Keyword"===item.TimerType&&(item.Keywords=[{KeywordType:form.querySelector(".selectKeywordType").value,Keyword:form.querySelector(".txtKeyword").value}]),apiClient.updateLiveTvSeriesTimer(item)}),e.preventDefault(),!1}function init(context,apiClient){!function(context){for(var html="",i=0;i<=50;i++){var text=void 0;text=0===i?_globalize.default.translate("AsManyAsPossible"):1===i?_globalize.default.translate("ValueOneEpisode"):_globalize.default.translate("ValueEpisodeCount",i),html+='<option value="'+i+'">'+text+"</option>"}context.querySelector(".selectKeepUpTo").innerHTML=html}(context),context.querySelector(".selectAirDays").getItems=getAirDaysItems,context.querySelector(".selectChannels").getItems=function(query){return query=Object.assign({UserId:this.getCurrentUserId(),EnableUserData:!1},query),_usersettings.default.addLiveTvChannelSortingToQuery(query,_globalize.default),this.getLiveTvChannels(query)}.bind(apiClient),context.querySelector("form").addEventListener("submit",onSubmit)}function onFieldChange(e){this.querySelector(".btnSubmit").click()}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,require(["css!modules/recordingcreator/recordingcreator.css","material-icons","flexStyles"]),_exports.default={embed:function(itemId,serverId,options){currentServerId=serverId,_loading.default.show(),options=options||{},require(["text!modules/recordingcreator/seriesrecordingeditor.template.html"],function(template){var dlg=options.context,template=(dlg.innerHTML=_globalize.default.translateDocument(template,"sharedcomponents"),dlg.removeEventListener("change",onFieldChange),dlg.addEventListener("change",onFieldChange),dlg.classList.remove("hide"),_connectionmanager.default.getApiClient(serverId));init(dlg,template),function(context,id){var apiClient=_connectionmanager.default.getApiClient(currentServerId);_loading.default.show(),"string"==typeof id?(currentItemId=id,apiClient.getLiveTvSeriesTimer(id).then(function(result){renderTimer(context,result),_loading.default.hide()})):id&&(currentItemId=id.Id,renderTimer(context,id),_loading.default.hide())}(dlg,itemId)})}}}); |