define(["exports","./../modules/common/globalize.js","./../modules/emby-elements/emby-input/emby-input.js","./../modules/emby-elements/emby-button/emby-button.js","./../modules/emby-elements/emby-checkbox/emby-checkbox.js","./../modules/emby-elements/emby-select/emby-select.js","./../modules/emby-elements/emby-scroller/emby-scroller.js","./../modules/layoutmanager.js","./../modules/loading/loading.js","./../modules/dialoghelper/dialoghelper.js"],function(_exports,_globalize,_embyInput,_embyButton,_embyCheckbox,_embySelect,_embyScroller,_layoutmanager,_loading,_dialoghelper){function onSubmit(e){return _loading.default.show(),this.options.apiClient.saveUserNotification(getEntry(this)).then(function(){_loading.default.hide(),this.submitted=!0,_dialoghelper.default.close(this.dlg)}.bind(this)),e.preventDefault(),!1}function onTestSuccess(){var options;_loading.default.hide(),options=_globalize.default.translate("NotificationSent"),Emby.importModule("./modules/toast/toast.js").then(function(toast){return toast(options)})}function onTestFail(){var options;_loading.default.hide(),options=_globalize.default.translate("ErrorSendingNotification"),Emby.importModule("./modules/common/dialogs/alert.js").then(function(alert){return alert(options)})}function getEntry(instance){var entry=Object.assign({},instance.options.entry),dlg=instance.dlg;return instance.options.entryFormEditor.setObjectValues(dlg,entry),entry.UserIds=dlg.querySelector(".selectUser").getValues(),entry.LibraryIds=dlg.querySelector(".selectLibrary").getValues(),entry.EventIds=Array.prototype.map.call(dlg.querySelectorAll(".chkSubEvent:checked"),function(c){return c.getAttribute("data-id")}),entry}function onEventChange(e){var e=e.target,view=this.dlg;if(e.classList.contains("chkEvent"))for(var page=view,eventId=e.getAttribute("data-id"),checked=e.checked,elems=page.querySelectorAll('.chkSubEvent[data-categoryid="'+eventId+'"]'),i=0,length=elems.length;i')+'
'+"";for(var _i=0,_length=events.length;_i<_length;_i++)var _currentEvent=events[_i],_eventId=_currentEvent.Id,html=(html=(html=(html+='";return html=html+"
"+""}(i,options.entry)}).join("");var onEventChangeHandler=onEventChange.bind(instance),selectEventList=dlg.querySelector(".eventList");selectEventList.addEventListener("change",onEventChangeHandler),dlg.querySelector(".btnSubmit").innerHTML=isNew?_globalize.default.translate("AddNotification"):_globalize.default.translate("Save"),fillData(instance,options.entry,dlg,options.apiClient),onEventChangeHandler({target:selectEventList}),dlg.querySelector("form").addEventListener("submit",onSubmit.bind(instance)),dlg.querySelector(".btnSendTest").addEventListener("click",function(){var apiClient=this.options.apiClient;_loading.default.show(),apiClient.sendTestUserNotification(getEntry(this)).then(onTestSuccess,onTestFail)}.bind(instance)),dlg.querySelector(".btnCancel").addEventListener("click",function(){_dialoghelper.default.close(dlg)}),options.apiClient.getUser(options.userId).then(function(user){user.Policy.IsAdministrator?dlg.querySelector(".fldSelectUser").classList.remove("hide"):dlg.querySelector(".fldSelectUser").classList.add("hide")})}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,EntryEditor.prototype.show=function(options){var dialogOptions={removeOnClose:!0,scrollY:!1},dlg=(_layoutmanager.default.tv?dialogOptions.size="fullscreen":dialogOptions.size="small",_dialoghelper.default.createDialog(dialogOptions)),instance=(dlg.classList.add("formDialog"),this.options=options,this.dlg=dlg,this);return require(["text!settings/notificationeditor.template.html"]).then(function(responses){var isNew=null==options.entry.Id,responses=responses[0];return dlg.innerHTML=_globalize.default.translateDocument(responses),dlg.querySelector(".formDialogHeaderTitle").innerHTML=isNew?_globalize.default.translate("AddNotification"):_globalize.default.translate("EditNotification"),options.entryFormEditor.loadTemplate(dlg.querySelector(".entryFormElements")).then(function(){return initDialogContent(instance,dlg,options,isNew),_dialoghelper.default.open(dlg).then(function(){var _this$options;return null!=(_this$options=this.options)&&null!=(_this$options=_this$options.entryFormEditor)&&_this$options.destroy&&this.options.entryFormEditor.destroy(),this.options=null,this.dlg=null,this.submitted?Promise.resolve():Promise.reject()}.bind(instance))})})},_exports.default=EntryEditor});