File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/js/calendar/compacteventform/dist/compacteventform.bundle.js.map
Back
{"version":3,"file":"compacteventform.bundle.js","sources":["../src/compacteventform.js"],"sourcesContent":["// @flow\nimport {Type, Tag, Loc, Dom, Event, Runtime, Text} from 'main.core';\nimport {BaseEvent, EventEmitter} from 'main.core.events';\nimport {Util} from 'calendar.util';\nimport {Popup, PopupManager} from 'main.popup';\nimport {\n\tDateTimeControl,\n\tLocation,\n\tReminder,\n\tSectionSelector,\n\tUserPlannerSelector,\n\tColorSelector,\n\tBusyUsersDialog\n} from \"calendar.controls\";\nimport {Entry, EntryManager} from \"calendar.entry\";\nimport {SectionManager} from \"calendar.sectionmanager\";\nimport { MessageBox } from 'ui.dialogs.messagebox';\n\nexport class CompactEventForm extends EventEmitter\n{\n\tstatic VIEW_MODE = 'view';\n\tstatic EDIT_MODE = 'edit';\n\tstatic USER_URL = '/company/personal/user/#USER_ID#/';\n\tSTATE = {READY: 1, REQUEST: 2, ERROR: 3};\n\tzIndex = 1200;\n\tZ_INDEX_OFFSET = -1000;\n\tuserSettings = '';\n\tDOM = {};\n\tmode;\n\tdisplayed = false;\n\tsections = [];\n\tsectionIndex = {};\n\ttrackingUsersList = [];\n\tcheckDataBeforeCloseMode = true;\n\tCHECK_CHANGES_DELAY = 500;\n\tRELOAD_DATA_DELAY = 500;\n\n\tconstructor(options = {})\n\t{\n\t\tsuper();\n\t\tthis.setEventNamespace('BX.Calendar.CompactEventForm');\n\t\tthis.userId = options.userId || Util.getCurrentUserId();\n\t\tthis.type = options.type || 'user';\n\t\tthis.isLocationCalendar = options.isLocationCalendar || false;\n\t\tthis.calendarContext = options.calendarContext || null;\n\t\tthis.ownerId = options.ownerId || this.userId;\n\t\tthis.BX = Util.getBX();\n\n\t\tthis.checkForChangesDebounce = Runtime.debounce(this.checkForChanges, this.CHECK_CHANGES_DELAY, this);\n\t\tthis.reloadEntryDataDebounce = Runtime.debounce(this.reloadEntryData, this.RELOAD_DATA_DELAY, this);\n\t\tthis.checkOutsideClickClose = this.checkOutsideClickClose.bind(this);\n\t\tthis.outsideMouseDownClose = this.outsideMouseDownClose.bind(this);\n\t\tthis.keyHandler = this.handleKeyPress.bind(this);\n\t}\n\n\tshow(mode = CompactEventForm.EDIT_MODE, params ={})\n\t{\n\t\tthis.setParams(params);\n\t\tthis.setMode(mode);\n\n\t\tthis.state = this.STATE.READY;\n\n\t\tthis.popupId = 'compact-event-form-' + Math.round(Math.random() * 100000);\n\n\t\tif (this.popup)\n\t\t{\n\t\t\tthis.popup.destroy();\n\t\t}\n\t\tthis.popup = this.getPopup(params);\n\n\t\t// Small hack to use transparent titlebar to drag&drop popup\n\t\tDom.addClass(this.popup.titleBar, 'calendar-add-popup-titlebar');\n\t\tDom.removeClass(this.popup.popupContainer, 'popup-window-with-titlebar');\n\t\tDom.removeClass(this.popup.closeIcon, 'popup-window-titlebar-close-icon');\n\t\tEvent.bind(document, \"mousedown\", this.outsideMouseDownClose);\n\t\tEvent.bind(document, \"mouseup\", this.checkOutsideClickClose);\n\t\tEvent.bind(document, \"keydown\", this.keyHandler);\n\t\tEvent.bind(this.popup.popupContainer, 'transitionend', () => {Dom.removeClass(this.popup.popupContainer, 'calendar-simple-view-popup-show');});\n\n\t\t// Fulfill previous deletions to avoid data inconsistency\n\t\tif (this.getMode() === CompactEventForm.EDIT_MODE)\n\t\t{\n\t\t\tEntryManager.doDelayedActions();\n\t\t}\n\n\t\tthis.prepareData()\n\t\t\t.then(() => {\n\t\t\t\tif (this.checkLocationView())\n\t\t\t\t{\n\t\t\t\t\tthis.setFormValuesLocation();\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.setFormValues();\n\t\t\t\t}\n\n\t\t\t\tthis.popup.show();\n\t\t\t\tif (\n\t\t\t\t\tthis.userPlannerSelector\n\t\t\t\t\t&& (\n\t\t\t\t\t\tthis.isLocationCalendar\n\t\t\t\t\t\t|| (\n\t\t\t\t\t\t\tthis.userPlannerSelector.attendeesEntityList.length > 1\n\t\t\t\t\t\t\t&& this.getMode() !== CompactEventForm.VIEW_MODE\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.userPlannerSelector.showPlanner();\n\t\t\t\t}\n\n\t\t\t\tthis.checkDataBeforeCloseMode = true;\n\t\t\t\tif (this.canDo('edit') && this.DOM.titleInput && mode === CompactEventForm.EDIT_MODE)\n\t\t\t\t{\n\t\t\t\t\tthis.DOM.titleInput.focus();\n\t\t\t\t\tthis.DOM.titleInput.select();\n\t\t\t\t}\n\n\t\t\t\tthis.displayed = true;\n\n\t\t\t\tif (this.getMode() === CompactEventForm.VIEW_MODE)\n\t\t\t\t{\n\t\t\t\t\tUtil.sendAnalyticLabel({calendarAction: 'view_event', formType: 'compact'});\n\t\t\t\t\tthis.popup.getButtons()[0].button.focus();\n\t\t\t\t}\n\n\t\t\t\tif (\n\t\t\t\t\tthis.getMode() === CompactEventForm.EDIT_MODE\n\t\t\t\t\t&& !this.userPlannerSelector.isPlannerDisplayed()\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.userPlannerSelector.checkBusyTime()\n\t\t\t\t}\n\t\t\t});\n\t}\n\n\tcheckLocationView()\n\t{\n\t\treturn this.getMode() === CompactEventForm.VIEW_MODE && this.type === 'location'\n\t}\n\n\tgetPopup(params)\n\t{\n\t\treturn new Popup(this.popupId,\n\t\t\tparams.bindNode,\n\t\t\t{\n\t\t\t\tzIndex: this.zIndex + this.Z_INDEX_OFFSET,\n\t\t\t\tcloseByEsc: true,\n\t\t\t\toffsetTop: 0,\n\t\t\t\toffsetLeft: 0,\n\t\t\t\tcloseIcon: true,\n\t\t\t\ttitleBar: true,\n\t\t\t\tdraggable: true,\n\t\t\t\tresizable: false,\n\t\t\t\tlightShadow: true,\n\t\t\t\tclassName: 'calendar-simple-view-popup calendar-simple-view-popup-show',\n\t\t\t\tcacheable: false,\n\t\t\t\tcontent: this.checkLocationView()\n\t\t\t\t\t? this.getPopupContentLocation()\n\t\t\t\t\t: this.getPopupContentCalendar(),\n\t\t\t\tbuttons: this.getButtons(),\n\t\t\t\tevents: {\n\t\t\t\t\tonPopupClose: this.close.bind(this)\n\t\t\t\t},\n\t\t\t});\n\t}\n\n\tisShown()\n\t{\n\t\treturn this.displayed;\n\t}\n\n\tclose(fromButton = true, fromPopup = false)\n\t{\n\t\tif (\n\t\t\t!fromButton\n\t\t\t&& !this.checkTopSlider()\n\t\t)\n\t\t{\n\t\t\tif (this.popup)\n\t\t\t{\n\t\t\t\tthis.popup.destroyed = true;\n\t\t\t\tsetTimeout(() => {this.popup.destroyed = false;}, 0);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tif (\n\t\t\tthis.getMode() === CompactEventForm.EDIT_MODE\n\t\t\t&& this.formDataChanged()\n\t\t\t&& this.checkDataBeforeCloseMode\n\t\t\t&& !fromPopup\n\t\t)\n\t\t{\n\t\t\tthis.showConfirmClosePopup();\n\t\t\t// Workaround to prevent form closing even if user don't want to and presses \"cancel\" in confirm\n\t\t\tif (this.popup)\n\t\t\t{\n\t\t\t\tthis.popup.destroyed = true;\n\t\t\t\tsetTimeout(() => {this.popup.destroyed = false;}, 0);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\n\t\tthis.displayed = false;\n\t\tthis.emit('onClose');\n\t\tEvent.unbind(document, \"mousedown\", this.outsideMouseDownClose);\n\t\tEvent.unbind(document, \"mouseup\", this.checkOutsideClickClose);\n\t\tEvent.unbind(document, \"keydown\", this.keyHandler);\n\n\t\tif (this.userPlannerSelector)\n\t\t{\n\t\t\tthis.userPlannerSelector.destroy();\n\t\t}\n\n\t\tif (this.popup)\n\t\t{\n\t\t\tthis.popup.destroy();\n\t\t}\n\n\t\tif (Location)\n\t\t{\n\t\t\tLocation.setCurrentCapacity(0);\n\t\t}\n\t\tUtil.clearPlannerWatches();\n\t\tUtil.closeAllPopups();\n\t}\n\n\tgetPopupContentCalendar()\n\t{\n\t\tthis.DOM.wrap = Tag.render`<div class=\"calendar-add-popup-wrap\">\n\t\t\t${this.DOM.titleOuterWrap = Tag.render`\n\t\t\t<div class=\"calendar-field-container calendar-field-container-string-select\">\n\t\t\t\t<div class=\"calendar-field-block\">\n\t\t\t\t\t${this.getEntryCounter()}\n\t\t\t\t\t${this.getTitleControl()}\n\t\t\t\t\t${this.getColorControl()}\n\t\t\t\t</div>\n\t\t\t</div>`}\n\t\t\t<div class=\"calendar-field-container calendar-field-container-choice\">\n\t\t\t\t${this.getSectionControl('textselect')}\n\t\t\t</div>\n\n\t\t\t${this.getDateTimeControl()}\n\n\t\t\t${this.getUserPlannerSelector()}\n\n\t\t\t<div class=\"calendar-field-container calendar-field-container-info\">\n\t\t\t\t${this.getTypeInfoControl()}\n\n\t\t\t\t\t${this.getLocationControl()}\n\n\t\t\t\t${this.DOM.remindersOuterWrap = Tag.render`\n\t\t\t\t<div class=\"calendar-field-block\">\n\t\t\t\t\t<div class=\"calendar-field-title\">${Loc.getMessage('EC_REMIND_LABEL')}:</div>\n\t\t\t\t\t${this.createRemindersControl()}\n\t\t\t\t</div>`}\n\t\t\t\t${this.getRRuleInfoControl()}\n\t\t\t</div>\n\t\t</div>`;\n\n\t\treturn this.DOM.wrap;\n\t}\n\n\tgetPopupContentLocation()\n\t{\n\t\tthis.DOM.wrap = Tag.render`<div class=\"calendar-add-popup-wrap\">\n\t\t\t${this.DOM.titleOuterWrap = Tag.render`\n\t\t\t<div class=\"calendar-field-container calendar-field-container-string-select\">\n\t\t\t\t<div class=\"calendar-field-block\">\n\t\t\t\t\t${this.getTitleControlLocation()}\n\t\t\t\t\t${this.getColorControlsLocationView()}\n\t\t\t\t</div>\n\t\t\t</div>`}\n\t\t\t<div class=\"calendar-field-container calendar-field-container-choice\">\n\t\t\t\t${this.getSectionControl('location')}\n\t\t\t</div>\n\t\t\t${this.getDateTimeControl()}\n\t\t\t\n\t\t</div>`;\n\t\tif (this.entry.id !== this.entry.parentId)\n\t\t{\n\t\t\tthis.DOM.wrap.appendChild(Tag.render`\n\t\t\t\t${this.getHostControl()}\n\t\t\t`);\n\t\t}\n\n\t\treturn this.DOM.wrap;\n\t}\n\n\tgetButtons()\n\t{\n\t\tlet buttons = [];\n\t\tconst mode = this.getMode();\n\n\t\tif (mode === CompactEventForm.EDIT_MODE)\n\t\t{\n\t\t\tconst saveBtn = new BX.UI.Button({\n\t\t\t\tname: 'save',\n\t\t\t\ttext : (this.isNewEntry()\n\t\t\t\t\t? Loc.getMessage('CALENDAR_EVENT_DO_ADD')\n\t\t\t\t\t: Loc.getMessage('CALENDAR_EVENT_DO_SAVE')),\n\t\t\t\tclassName: \"ui-btn ui-btn-primary\",\n\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\tthis.save();\n\t\t\t\t\t}}\n\t\t\t});\n\t\t\tsaveBtn.button.setAttribute('data-role', 'saveButton');\n\t\t\tbuttons.push(saveBtn);\n\n\n\t\t\tconst closeBtn = new BX.UI.Button({\n\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_CANCEL'),\n\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\tif (this.isNewEntry())\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.setFormValues();\n\n\t\t\t\t\t\t\tif (this.userPlannerSelector)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis.userPlannerSelector.destroy();\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tthis.setMode(CompactEventForm.VIEW_MODE);\n\t\t\t\t\t\t\tthis.popup.setButtons(this.getButtons());\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t});\n\t\t\tcloseBtn.button.setAttribute('data-role', 'closeButton');\n\t\t\tbuttons.push(closeBtn);\n\n\t\t\tconst fullFormBtn = new BX.UI.Button({\n\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_FULL_FORM'),\n\t\t\t\tclassName: \"ui-btn calendar-full-form-btn\",\n\t\t\t\tevents : {click : this.editEntryInSlider.bind(this)}\n\t\t\t});\n\t\t\tfullFormBtn.button.setAttribute('data-role', 'fullForm');\n\t\t\tbuttons.push(fullFormBtn);\n\t\t}\n\t\telse if (mode === CompactEventForm.VIEW_MODE)\n\t\t{\n\t\t\tif (this.entry.isMeeting() && this.entry.getCurrentStatus() === 'Q')\n\t\t\t{\n\t\t\t\tconst acceptBtn = new BX.UI.Button({\n\t\t\t\t\tclassName: \"ui-btn ui-btn-primary\",\n\t\t\t\t\ttext : Loc.getMessage('EC_DESIDE_BUT_Y'),\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\tEntryManager.setMeetingStatus(this.entry, 'Y')\n\t\t\t\t\t\t\t\t.then(this.refreshMeetingStatus.bind(this));\n\t\t\t\t\t\t}}\n\t\t\t\t});\n\t\t\t\tacceptBtn.button.setAttribute('data-role', 'accept');\n\t\t\t\tbuttons.push(acceptBtn);\n\n\t\t\t\tconst declineBtn = new BX.UI.Button({\n\t\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\t\ttext : Loc.getMessage('EC_DESIDE_BUT_N'),\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\tEntryManager.setMeetingStatus(this.entry, 'N')\n\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\t\tif (this.isShown())\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t});\n\t\t\t\tdeclineBtn.button.setAttribute('data-role', 'decline');\n\t\t\t\tbuttons.push(declineBtn);\n\t\t\t}\n\n\t\t\tif (this.checkLocationView())\n\t\t\t{\n\t\t\t\tif (this.entry.id !== this.entry.parentId)\n\t\t\t\t{\n\t\t\t\t\tbuttons.push(\n\t\t\t\t\t\tnew BX.UI.Button({\n\t\t\t\t\t\t\tclassName: `ui-btn ${this.entry.isMeeting() && this.entry.getCurrentStatus() === 'Q' ? 'ui-btn-link' : 'ui-btn-primary'}`,\n\t\t\t\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_OPEN_PARENT'),\n\t\t\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\t\t\t\tBX.Calendar.EntryManager.openViewSlider(\n\t\t\t\t\t\t\t\t\t\tthis.entry.parentId,\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\t\t\t\t\t\tfrom: this.entry.from,\n\t\t\t\t\t\t\t\t\t\t\ttimezoneOffset: this.entry && this.entry.data ? this.entry.data.TZ_OFFSET_FROM : null\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t\tif(this.canDo('release'))\n\t\t\t\t\t{\n\t\t\t\t\t\tbuttons.push(\n\t\t\t\t\t\t\tnew BX.UI.Button({\n\t\t\t\t\t\t\t\tname: 'release',\n\t\t\t\t\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_RELEASE'),\n\t\t\t\t\t\t\t\tclassName: 'ui-btn ui-btn-light-border',\n\t\t\t\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\t\t\t\t\tthis.releaseLocation();\n\t\t\t\t\t\t\t\t\t}},\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tbuttons.push(\n\t\t\t\t\t\tnew BX.UI.Button({\n\t\t\t\t\t\t\tclassName: `ui-btn ui-btn-disabled`,\n\t\t\t\t\t\t\ttext : Loc.getMessage('CALENDAR_UPDATE_PROGRESS'),\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tconst openBtn = new BX.UI.Button({\n\t\t\t\t\tclassName: `ui-btn ${this.entry.isMeeting() && this.entry.getCurrentStatus() === 'Q' ? 'ui-btn-link' : 'ui-btn-primary'}`,\n\t\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_OPEN'),\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\t\tBX.Calendar.EntryManager.openViewSlider(\n\t\t\t\t\t\t\t\tthis.entry.id,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tentry: this.entry,\n\t\t\t\t\t\t\t\t\tcalendarContext: this.calendarContext,\n\t\t\t\t\t\t\t\t\ttype: this.type,\n\t\t\t\t\t\t\t\t\townerId: this.ownerId,\n\t\t\t\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\t\t\t\tfrom: this.entry.from,\n\t\t\t\t\t\t\t\t\ttimezoneOffset: this.entry && this.entry.data ? this.entry.data.TZ_OFFSET_FROM : null\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t}}\n\t\t\t\t});\n\t\t\t\topenBtn.button.setAttribute('data-role', 'openButton');\n\t\t\t\tbuttons.push(openBtn);\n\t\t\t}\n\n\t\t\tif (this.entry.isMeeting() && this.entry.getCurrentStatus() === 'N')\n\t\t\t{\n\t\t\t\tconst acceptBtn = new BX.UI.Button({\n\t\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\t\ttext : Loc.getMessage('EC_DESIDE_BUT_Y'),\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\tEntryManager.setMeetingStatus(this.entry, 'Y')\n\t\t\t\t\t\t\t\t.then(this.refreshMeetingStatus.bind(this));\n\t\t\t\t\t\t}}\n\t\t\t\t});\n\t\t\t\tacceptBtn.button.setAttribute('data-role', 'accept');\n\t\t\t\tbuttons.push(acceptBtn);\n\t\t\t}\n\n\t\t\tif (this.entry.isMeeting() && this.entry.getCurrentStatus() === 'Y')\n\t\t\t{\n\t\t\t\tconst declineBtn = new BX.UI.Button({\n\t\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\t\ttext : Loc.getMessage('EC_DESIDE_BUT_N'),\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\tEntryManager.setMeetingStatus(this.entry, 'N')\n\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\t\tif (this.isShown())\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t});\n\t\t\t\tdeclineBtn.button.setAttribute('data-role', 'decline');\n\t\t\t\tbuttons.push(declineBtn);\n\t\t\t}\n\n\t\t\tif (!this.isNewEntry() && this.canDo('edit') && this.type !== 'location')\n\t\t\t{\n\t\t\t\tbuttons.push(\n\t\t\t\t\tnew BX.UI.Button({\n\t\t\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_EDIT'),\n\t\t\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\t\t\tevents : {click : this.editEntryInSlider.bind(this)}\n\t\t\t\t\t})\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t!this.isNewEntry()\n\t\t\t\t&& this.canDo('delete')\n\t\t\t\t&& !this.checkLocationView()\n\t\t\t)\n\t\t\t{\n\t\t\t\tif (\n\t\t\t\t\t!this.entry.isMeeting()\n\t\t\t\t\t|| !this.entry.getCurrentStatus()\n\t\t\t\t\t|| this.entry.getCurrentStatus() === 'H'\n\t\t\t\t\t|| this.entry.data['CREATED_BY'] === this.entry.data['MEETING_HOST']\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tbuttons.push(\n\t\t\t\t\t\tnew BX.UI.Button({\n\t\t\t\t\t\t\ttext : Loc.getMessage('CALENDAR_EVENT_DO_DELETE'),\n\t\t\t\t\t\t\tclassName: \"ui-btn ui-btn-link\",\n\t\t\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\t\t\t\tEventEmitter.subscribeOnce('BX.Calendar.Entry:beforeDelete', () => {\n\t\t\t\t\t\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\tEntryManager.deleteEntry(this.entry);\n\n\t\t\t\t\t\t\t\t\tif (!this.entry.wasEverRecursive())\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tthis.close();\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t})\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (buttons.length > 2)\n\t\t{\n\t\t\tbuttons[1].button.className = \"ui-btn ui-btn-light-border\";\n\t\t}\n\n\t\treturn buttons;\n\t}\n\n\tfreezePopup()\n\t{\n\t\tif (this.popup)\n\t\t{\n\t\t\tthis.popup.buttons.forEach((button) => {\n\t\t\t\tif (button?.options?.name === 'save')\n\t\t\t\t{\n\t\t\t\t\tbutton.setClocking(true);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tbutton.setDisabled(true);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\n\tunfreezePopup()\n\t{\n\t\tif (this.popup)\n\t\t{\n\t\t\tthis.popup.buttons.forEach((button) => {\n\t\t\t\tbutton.setClocking(false);\n\t\t\t\tbutton.setDisabled(false);\n\t\t\t});\n\t\t}\n\t}\n\n\trefreshMeetingStatus()\n\t{\n\t\tthis.emit('doRefresh');\n\t\tthis.popup.setButtons(this.getButtons());\n\t\tif (this.entry.isInvited())\n\t\t{\n\t\t\tDom.removeClass(this.DOM.entryCounter, 'calendar-event-invite-counter-none');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.addClass(this.DOM.entryCounter, 'calendar-event-invite-counter-none');\n\t\t}\n\t\tif (this.userPlannerSelector)\n\t\t{\n\t\t\tthis.userPlannerSelector.displayAttendees(this.entry.getAttendees());\n\t\t}\n\t}\n\n\thideLoader()\n\t{\n\t\tif (Type.isDomNode(this.DOM.loader))\n\t\t{\n\t\t\tDom.remove(this.DOM.loader);\n\t\t\tthis.DOM.loader = null;\n\t\t}\n\t}\n\n\tshowInEditMode(params = {})\n\t{\n\t\treturn this.show(CompactEventForm.EDIT_MODE, params);\n\t}\n\n\tshowInViewMode(params = {})\n\t{\n\t\treturn this.show(CompactEventForm.VIEW_MODE, params);\n\t}\n\n\tsetMode(mode)\n\t{\n\t\tif (mode === 'edit' || mode === 'view')\n\t\t{\n\t\t\tthis.mode = mode;\n\t\t}\n\t}\n\n\tgetMode()\n\t{\n\t\treturn this.mode;\n\t}\n\n\tcheckForChanges()\n\t{\n\t\tif (\n\t\t\t!this.isNewEntry()\n\t\t\t&& this.getMode() === CompactEventForm.VIEW_MODE\n\t\t\t&& this.formDataChanged()\n\t\t)\n\t\t{\n\t\t\tthis.setMode(CompactEventForm.EDIT_MODE);\n\t\t\tthis.popup.setButtons(this.getButtons());\n\t\t}\n\t\telse if (\n\t\t\t!this.isNewEntry()\n\t\t\t&& this.getMode() === CompactEventForm.EDIT_MODE\n\t\t\t&& !this.formDataChanged()\n\t\t)\n\t\t{\n\t\t\tthis.setMode(CompactEventForm.VIEW_MODE);\n\t\t\tthis.popup.setButtons(this.getButtons());\n\t\t}\n\t\tthis.emitOnChange();\n\t}\n\n\tcheckLocationForm(event)\n\t{\n\t\tif (event && event instanceof BaseEvent)\n\t\t{\n\t\t\tconst data = event.getData();\n\t\t\tconst usersCount = data.usersCount;\n\n\t\t\tlet locationCapacity = Location.getCurrentCapacity() || 0;\n\n\t\t\tif (this.locationSelector.value.type === undefined)\n\t\t\t{\n\t\t\t\tif (locationCapacity)\n\t\t\t\t{\n\t\t\t\t\tlocationCapacity = 0;\n\t\t\t\t\tLocation.setCurrentCapacity(0);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (locationCapacity < usersCount && locationCapacity !== 0)\n\t\t\t{\n\t\t\t\tthis.locationSelector.addCapacityAlert();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.locationSelector.removeCapacityAlert();\n\t\t\t}\n\t\t}\n\t}\n\n\tgetFormDataChanges(excludes = [])\n\t{\n\t\tconst entry = this.entry;\n\t\tlet fields = [];\n\n\t\t// Name\n\t\tif (!excludes.includes('name') && entry.name !== this.DOM.titleInput.value)\n\t\t{\n\t\t\tfields.push('name');\n\t\t}\n\n\t\t// Location\n\t\tif (\n\t\t\t!excludes.includes('location')\n\t\t\t&&\n\t\t\tthis.locationSelector.getTextLocation(Location.parseStringValue(entry.getLocation()))\n\t\t\t!==\n\t\t\tthis.locationSelector.getTextLocation(Location.parseStringValue(this.locationSelector.getTextValue()))\n\t\t)\n\t\t{\n\t\t\tfields.push('location');\n\t\t}\n\n\t\t// Date + time\n\t\tconst dateTime = this.dateTimeControl.getValue();\n\t\tif (\n\t\t\t!excludes.includes('date&time')\n\t\t\t&&\n\t\t\t(entry.isFullDay() !== dateTime.fullDay\n\t\t\t\t|| dateTime.from.toString() !== entry.from.toString()\n\t\t\t\t|| dateTime.to.toString() !== entry.to.toString()\n\t\t\t)\n\t\t)\n\t\t{\n\t\t\tfields.push('date&time');\n\t\t}\n\n\t\t// Notify\n\t\tif (\n\t\t\t!excludes.includes('notify')\n\t\t\t&& (!entry.isMeeting() || entry.getMeetingNotify()) !== this.userPlannerSelector.getInformValue()\n\t\t)\n\t\t{\n\t\t\tfields.push('notify');\n\t\t}\n\n\t\t// Section\n\t\tif (!excludes.includes('section') && parseInt(entry.sectionId) !== parseInt(this.sectionValue))\n\t\t{\n\t\t\tfields.push('section');\n\t\t}\n\n\t\t// Access codes\n\t\tif (\n\t\t\t!excludes.includes('codes')\n\t\t\t&&\n\t\t\tthis.userPlannerSelector.getEntityList().map((item)=>{return item.entityId + ':' + item.id}).join('|')\n\t\t\t!==\n\t\t\tentry.getAttendeesEntityList().map((item)=>{return item.entityId + ':' + item.id}).join('|')\n\t\t)\n\t\t{\n\t\t\tfields.push('codes');\n\t\t}\n\n\t\treturn fields;\n\t}\n\n\tformDataChanged()\n\t{\n\t\treturn this.getFormDataChanges().length > 0;\n\t}\n\n\tsetParams(params = {})\n\t{\n\t\tthis.userId = params.userId || Util.getCurrentUserId();\n\t\tthis.type = params.type || 'user';\n\t\tthis.isLocationCalendar = params.isLocationCalendar || false;\n\t\tthis.locationAccess = params.locationAccess || false;\n\t\tthis.dayOfWeekMonthFormat = params.dayOfWeekMonthFormat || false;\n\t\tthis.calendarContext = params.calendarContext || null;\n\t\tthis.ownerId = params.ownerId ? params.ownerId : 0;\n\t\tif (this.type === 'user' && !this.ownerId)\n\t\t{\n\t\t\tthis.ownerId = this.userId;\n\t\t}\n\t\tthis.entry = EntryManager.getEntryInstance(params.entry, params.userIndex, {type: this.type, ownerId: this.ownerId});\n\t\tthis.sectionValue = null;\n\n\t\tif (\n\t\t\t!this.entry.id\n\t\t\t&& Type.isPlainObject(params.entryTime)\n\t\t\t&& Type.isDate(params.entryTime.from)\n\t\t\t&& Type.isDate(params.entryTime.to)\n\t\t)\n\t\t{\n\t\t\tthis.entry.setDateTimeValue(params.entryTime);\n\t\t}\n\n\t\tif (Type.isPlainObject(params.userSettings))\n\t\t{\n\t\t\tthis.userSettings = params.userSettings;\n\t\t}\n\n\t\tthis.locationFeatureEnabled = !!params.locationFeatureEnabled;\n\t\tthis.locationList = Type.isArray(params.locationList)\n\t\t\t? params.locationList.filter(locationItem => {return locationItem.PERM.view_full})\n\t\t\t: [];\n\n\t\tthis.roomsManager = params.roomsManager || null;\n\t\tthis.iblockMeetingRoomList = params.iblockMeetingRoomList || [];\n\n\t\tthis.plannerFeatureEnabled = !!params.plannerFeatureEnabled;\n\n\t\tthis.setSections(params.sections, params.trackingUserList)\n\t}\n\n\tsetSections(sections, trackingUsersList = [])\n\t{\n\t\tthis.sections = sections;\n\t\tthis.sectionIndex = {};\n\t\tthis.trackingUsersList = trackingUsersList || [];\n\n\t\tif (Type.isArray(this.sections))\n\t\t{\n\t\t\tthis.sections.forEach((value, ind) => {\n\t\t\t\tconst id = parseInt(value.ID || value.id);\n\t\t\t\tif (id > 0)\n\t\t\t\t{\n\t\t\t\t\tthis.sectionIndex[id] = ind;\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\n\t\tconst section = this.getCurrentSection();\n\t\tif (this.entry.id)\n\t\t{\n\t\t\tthis.getSectionsForEditEvent(this.sections, section);\n\t\t}\n\t}\n\n\tprepareData(params = {})\n\t{\n\t\treturn new Promise((resolve) => {\n\t\t\tconst section = this.getCurrentSection();\n\t\t\tif (section && section.canDo)\n\t\t\t{\n\t\t\t\tresolve();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.getCompactFormData', {\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tentryId: this.entry.id,\n\t\t\t\t\t\tloadSectionId: this.entry.sectionId\n\t\t\t\t\t}\n\t\t\t\t}).then((response) => {\n\t\t\t\t\tif (response && response.data && response.data.section)\n\t\t\t\t\t{\n\t\t\t\t\t\t// todo: refactor this part to new Section entities\n\t\t\t\t\t\tthis.sections.push(new window.BXEventCalendar.Section(Util.getCalendarContext(), response.data.section));\n\t\t\t\t\t\tthis.setSections(this.sections);\n\t\t\t\t\t\tresolve();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\tgetEntryCounter()\n\t{\n\t\tif (!this.DOM.entryCounter)\n\t\t{\n\t\t\tthis.DOM.entryCounter = Tag.render`\n\t\t\t\t<span class=\"calendar-event-invite-counter calendar-event-invite-counter-big\">1</span>\n\t\t\t`;\n\t\t}\n\n\t\tif (this.entry.isInvited())\n\t\t{\n\t\t\tDom.removeClass(this.DOM.entryCounter, 'calendar-event-invite-counter-none');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.addClass(this.DOM.entryCounter, 'calendar-event-invite-counter-none');\n\t\t}\n\n\t\treturn this.DOM.entryCounter;\n\t}\n\n\tgetTitleControl()\n\t{\n\t\tthis.DOM.titleInput = Tag.render`\n\t\t\t<input class=\"calendar-field calendar-field-string\"\n\t\t\t\tvalue=\"\"\n\t\t\t\tplaceholder=\"${Loc.getMessage('EC_ENTRY_NAME')}\"\n\t\t\t\ttype=\"text\"\n\t\t\t/>\n\t\t`;\n\n\t\tEvent.bind(this.DOM.titleInput, 'keyup', this.checkForChangesDebounce);\n\t\tEvent.bind(this.DOM.titleInput, 'change', this.checkForChangesDebounce);\n\n\t\treturn this.DOM.titleInput;\n\t}\n\n\tgetTitleControlLocation()\n\t{\n\t\tthis.DOM.titleInput = Tag.render`\n\t\t\t<input class=\"calendar-field calendar-field-string\"\n\t\t\t\tvalue=\"\"\n\t\t\t\tplaceholder=\"${Loc.getMessage('EC_ENTRY_NAME')}\"\n\t\t\t\ttype=\"text\"\n\t\t\t\treadonly\n\t\t\t/>\n\t\t`;\n\n\t\treturn this.DOM.titleInput;\n\t}\n\n\tgetHostControl()\n\t{\n\t\tconst userId = this.entry.data.CREATED_BY;\n\t\tconst userUrl = CompactEventForm.USER_URL.replace('#USER_ID#', userId);\n\t\tconst userAvatar = this.BX.Calendar.EntryManager.userIndex[userId]\n\t\t\t? this.BX.Calendar.EntryManager.userIndex[userId].AVATAR\n\t\t\t: ''\n\t\t;\n\n\t\tthis.DOM.hostBar = Tag.render`\n\t\t\t<div class=\"calendar-slider-detail-option-without-border\">\n\t\t\t\t<div class=\"calendar-slider-detail-option-block\">\n\t\t\t\t\t<div class=\"calendar-field-value\">\n\t\t\t\t\t\t${Loc.getMessage('EC_HOST') + ': '}\n\t\t\t\t\t</div>\n\t\t\t\t\t<span class=\"calendar-field-location-host-img\">\n\t\t\t\t\t\t<a href=\"${userUrl}\">\n\t\t\t\t\t\t\t<img class=\"calendar-field-location-host-img-value\" src=\"${userAvatar}\" alt=\"\">\n\t\t\t\t\t\t</a>\n\t\t\t\t\t</span>\n\t\t\t\t\t<div class=\"calendar-slider-detail-option-value\">\n\t\t\t\t\t\t<a href=\"${userUrl}\" class=\"calendar-slider-sidebar-user-info-name calendar-slider-sidebar-user-info-name-padding\">${BX.util.htmlspecialchars(this.entry.name)}</a>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t`;\n\t\treturn this.DOM.hostBar;\n\t}\n\n\tgetColorControl()\n\t{\n\t\tthis.DOM.colorSelect = Tag.render`<div class=\"calendar-field calendar-field-select calendar-field-tiny\"></div>`;\n\t\tthis.colorSelector = new ColorSelector({\n\t\t\twrap: this.DOM.colorSelect,\n\t\t\tmode: 'selector'\n\t\t});\n\n\t\tthis.colorSelector.subscribe('onChange', (event) => {\n\t\t\tif (event instanceof BaseEvent)\n\t\t\t{\n\t\t\t\tconst color = event.getData().value;\n\t\t\t\tif (\n\t\t\t\t\t!this.isNewEntry()\n\t\t\t\t\t&& (this.canDo('edit') || this.entry.getCurrentStatus() !== false)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.updateColor', {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tentryId: this.entry.id,\n\t\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\t\tcolor: color\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tthis.entry.data.COLOR = color;\n\n\t\t\t\t\tthis.emit('doRefresh');\n\t\t\t\t\tthis.emitOnChange();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\n\t\treturn this.DOM.colorSelect;\n\t}\n\n\tgetColorControlsLocationView()\n\t{\n\t\tthis.DOM.colorSelect = Tag.render`<div class=\"calendar-field calendar-field-select calendar-colorpicker-readonly calendar-field-tiny\"></div>`;\n\t\tthis.colorSelector = new ColorSelector({\n\t\t\twrap: this.DOM.colorSelect,\n\t\t\tmode: 'view'\n\t\t});\n\t\treturn this.DOM.colorSelect;\n\t}\n\n\tgetSectionControl(mode)\n\t{\n\t\tthis.DOM.sectionSelectWrap = Tag.render`<div class=\"calendar-field-choice-calendar\"></div>`;\n\t\tthis.sectionSelector = new SectionSelector({\n\t\t\touterWrap: this.DOM.sectionSelectWrap,\n\t\t\tdefaultCalendarType: this.type,\n\t\t\tdefaultOwnerId: this.ownerId,\n\t\t\tsectionList: this.sections,\n\t\t\tsectionGroupList: SectionManager.getSectionGroupList({\n\t\t\t\ttype: this.type,\n\t\t\t\townerId: this.ownerId,\n\t\t\t\tuserId: this.userId,\n\t\t\t\ttrackingUsersList: this.trackingUsersList,\n\t\t\t}),\n\t\t\tmode: mode,\n\t\t\tzIndex: this.zIndex,\n\t\t\tgetCurrentSection: () => {\n\t\t\t\tconst section = this.getCurrentSection();\n\t\t\t\tif (section)\n\t\t\t\t{\n\t\t\t\t\treturn {\n\t\t\t\t\t\tid: section.id,\n\t\t\t\t\t\tname: section.name,\n\t\t\t\t\t\tcolor: section.color\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t},\n\t\t\tselectCallback: (sectionValue) => {\n\t\t\t\tif (sectionValue)\n\t\t\t\t{\n\t\t\t\t\tif (this.colorSelector)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.colorSelector.setValue(sectionValue.color);\n\t\t\t\t\t}\n\t\t\t\t\tthis.sectionValue = sectionValue.id;\n\t\t\t\t\tthis.checkForChangesDebounce();\n\n\t\t\t\t\tSectionManager.saveDefaultSectionId(this.sectionValue);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn this.DOM.sectionSelectWrap;\n\t}\n\n\tgetDateTimeControl()\n\t{\n\t\tthis.DOM.dateTimeWrap = Tag.render`<div class=\"calendar-field-container calendar-field-container-datetime\"></div>`;\n\n\t\tthis.dateTimeControl = new DateTimeControl(null, {\n\t\t\tshowTimezone: false,\n\t\t\touterWrap: this.DOM.dateTimeWrap,\n\t\t\tinlineEditMode: true\n\t\t});\n\n\t\tthis.dateTimeControl.subscribe('onChange', (event) => {\n\t\t\tif (event instanceof BaseEvent)\n\t\t\t{\n\t\t\t\tlet value = event.getData().value;\n\t\t\t\tif (this.remindersControl)\n\t\t\t\t{\n\t\t\t\t\tthis.remindersControl.setFullDayMode(value.fullDay);\n\n\t\t\t\t\tif (this.isNewEntry() && !this.remindersControl.wasChangedByUser())\n\t\t\t\t\t{\n\t\t\t\t\t\tconst defaultReminders = EntryManager.getNewEntryReminders(\n\t\t\t\t\t\t\tvalue.fullDay ? 'fullDay' : 'withTime'\n\t\t\t\t\t\t);\n\n\t\t\t\t\t\tthis.remindersControl.setValue(defaultReminders, false);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.userPlannerSelector)\n\t\t\t\t{\n\t\t\t\t\tif (!this.userPlannerSelector.isPlannerDisplayed())\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.userPlannerSelector.showPlanner();\n\t\t\t\t\t}\n\t\t\t\t\tthis.userPlannerSelector.setLocationValue(this.locationSelector.getTextValue());\n\t\t\t\t\tthis.userPlannerSelector.setDateTime(value, true);\n\t\t\t\t\tthis.userPlannerSelector.refreshPlannerStateDebounce();\n\t\t\t\t}\n\n\t\t\t\tif (this.locationSelector)\n\t\t\t\t{\n\t\t\t\t\tthis.locationSelector.checkLocationAccessibility(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfrom: event.getData().value.from,\n\t\t\t\t\t\t\tto: event.getData().value.to,\n\t\t\t\t\t\t\tfullDay: event.getData().value.fullDay,\n\t\t\t\t\t\t\tcurrentEventId: this.entry.id\n\t\t\t\t\t\t},\n\t\t\t\t\t)\n\t\t\t\t}\n\n\t\t\t\tthis.checkForChangesDebounce();\n\t\t\t}\n\t\t});\n\n\t\treturn this.DOM.dateTimeWrap;\n\t}\n\n\tgetUserPlannerSelector()\n\t{\n\t\tthis.DOM.userPlannerSelectorOuterWrap = Tag.render`<div>\n\t\t\t<div class=\"calendar-field-container calendar-field-container-members\">\n\t\t\t\t${this.DOM.userSelectorWrap = Tag.render`\n\t\t\t\t<div class=\"calendar-field-block\">\n\t\t\t\t\t<div class=\"calendar-members-selected\">\n\t\t\t\t\t\t<span class=\"calendar-attendees-label\"></span>\n\t\t\t\t\t\t<span class=\"calendar-attendees-list\"></span>\n\t\t\t\t\t\t<span class=\"calendar-members-more\">${Loc.getMessage('EC_ATTENDEES_MORE')}</span>\n\t\t\t\t\t\t<span class=\"calendar-members-change-link\">${Loc.getMessage('EC_SEC_SLIDER_CHANGE')}</span>\n\t\t\t\t\t</div>\n\t\t\t\t</div>`}\n\t\t\t\t<span class=\"calendar-videocall-wrap calendar-videocall-hidden\"></span>\n\t\t\t\t${this.DOM.informWrap = Tag.render`\n\t\t\t\t<div class=\"calendar-field-container-inform\">\n\t\t\t\t\t<span class=\"calendar-field-container-inform-text\">${Loc.getMessage('EC_NOTIFY_OPTION')}</span>\n\t\t\t\t</div>`}\n\t\t\t</div>\n\t\t\t<div class=\"calendar-user-selector-wrap\"></div>\n\t\t\t<div class=\"calendar-add-popup-planner-wrap calendar-add-popup-show-planner\">\n\t\t\t\t${this.DOM.plannerOuterWrap = Tag.render`\n\t\t\t\t<div class=\"calendar-planner-wrapper\" style=\"height: 0\">\n\t\t\t\t</div>`}\n\t\t\t</div>\n\t\t\t${this.DOM.hideGuestsWrap = Tag.render`\n\t\t\t<div class=\"calendar-hide-members-container\" style=\"display: none;\">\n\t\t\t\t<div class=\"calendar-hide-members-container-inner\">\n\t\t\t\t\t<div class=\"calendar-hide-members-icon-hidden\"></div>\n\t\t\t\t\t<div class=\"calendar-hide-members-text\">${Loc.getMessage('EC_HIDE_GUEST_NAMES')}</div>\n\t\t\t\t\t<span class=\"calendar-hide-members-helper\" data-hint=\"${Loc.getMessage('EC_HIDE_GUEST_NAMES_HINT')}\"></span>\n\t\t\t\t</div>\n\t\t\t</div>`}\n\t\t<div>`;\n\n\t\tthis.userPlannerSelector = new UserPlannerSelector({\n\t\t\touterWrap: this.DOM.userPlannerSelectorOuterWrap,\n\t\t\twrap: this.DOM.userSelectorWrap,\n\t\t\tinformWrap: this.DOM.informWrap,\n\t\t\tplannerOuterWrap: this.DOM.plannerOuterWrap,\n\t\t\thideGuestsWrap: this.DOM.hideGuestsWrap,\n\t\t\treadOnlyMode: false,\n\t\t\tuserId: this.userId,\n\t\t\ttype: this.type,\n\t\t\townerId: this.ownerId,\n\t\t\tzIndex: this.zIndex + 10,\n\t\t\tplannerFeatureEnabled: this.plannerFeatureEnabled,\n\t\t\tdayOfWeekMonthFormat: this.dayOfWeekMonthFormat\n\t\t});\n\n\t\tthis.userPlannerSelector.subscribe('onDateChange', this.handlePlannerSelectorChanges.bind(this));\n\t\tthis.userPlannerSelector.subscribe('onNotifyChange', this.checkForChangesDebounce);\n\t\tthis.userPlannerSelector.subscribe('onUserCodesChange', this.checkForChangesDebounce);\n\n\t\treturn this.DOM.userPlannerSelectorOuterWrap;\n\t}\n\n\tgetLocationControl()\n\t{\n\t\tthis.DOM.locationWrap = Tag.render`<div class=\"calendar-field-place\"></div>`;\n\t\tthis.DOM.locationOuterWrap = Tag.render`<div class=\"calendar-field-block\">\n\t\t\t<div class=\"calendar-field-title calendar-field-title-align-top\">${Loc.getMessage('EC_LOCATION_LABEL')}:</div>\n\t\t\t${this.DOM.locationWrap}\n\t\t</div>`;\n\n\t\tthis.locationSelector = new Location(\n\t\t\t{\n\t\t\t\twrap: this.DOM.locationWrap,\n\t\t\t\trichLocationEnabled: this.locationFeatureEnabled,\n\t\t\t\tlocationList: this.locationList || [],\n\t\t\t\troomsManager: this.roomsManager || null,\n\t\t\t\tlocationAccess: this.locationAccess || false,\n\t\t\t\tiblockMeetingRoomList: this.iblockMeetingRoomList || [],\n\t\t\t\tinlineEditModeEnabled: !this.isLocationCalendar,\n\t\t\t\tonChangeCallback: () => {\n\t\t\t\t\tif (this.userPlannerSelector)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.userPlannerSelector.setLocationValue(this.locationSelector.getTextValue());\n\t\t\t\t\t\tif (this.locationSelector.getValue().type !== undefined\n\t\t\t\t\t\t\t&& !this.userPlannerSelector.isPlannerDisplayed())\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.userPlannerSelector.showPlanner();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tthis.userPlannerSelector.refreshPlannerStateDebounce();\n\t\t\t\t\t}\n\t\t\t\t\tthis.checkForChangesDebounce();\n\t\t\t\t}\n\t\t\t}\n\t\t);\n\n\t\tif (this.userPlannerSelector)\n\t\t{\n\t\t\tthis.userPlannerSelector.subscribe('onDisplayAttendees', this.checkLocationForm.bind(this));\n\t\t\tthis.userPlannerSelector.planner?.subscribe('onDisplayAttendees', this.checkLocationForm.bind(this));\n\t\t}\n\n\t\treturn this.DOM.locationOuterWrap;\n\t}\n\n\tcreateRemindersControl()\n\t{\n\t\tthis.reminderValues = [];\n\t\tthis.DOM.remindersWrap = Tag.render`<div class=\"calendar-text\"></div>`;\n\t\tthis.remindersControl = new Reminder({\n\t\t\twrap: this.DOM.remindersWrap,\n\t\t\tzIndex: this.zIndex\n\t\t});\n\n\t\tthis.remindersControl.subscribe('onChange', (event) => {\n\t\t\tif (event instanceof BaseEvent)\n\t\t\t{\n\t\t\t\tthis.reminderValues = event.getData().values;\n\t\t\t\tif (!this.isNewEntry()\n\t\t\t\t\t&& (this.canDo('edit')\n\t\t\t\t\t\t|| this.entry.getCurrentStatus() !== false))\n\t\t\t\t{\n\t\t\t\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.updateReminders', {\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tentryId: this.entry.id,\n\t\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\t\treminders: this.reminderValues\n\t\t\t\t\t\t}\n\t\t\t\t\t}).then((response) => {\n\t\t\t\t\t\tthis.entry.data.REMIND = response.data.REMIND;\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn this.DOM.remindersWrap;\n\t}\n\n\tgetTypeInfoControl()\n\t{\n\t\tthis.DOM.typeInfoTitle = Tag.render`<div class=\"calendar-field-title\"></div>`;\n\t\tthis.DOM.typeInfoLink = Tag.render`<div class=\"calendar-field-link\"></div>`;\n\n\t\tthis.DOM.typeInfoWrap = Tag.render`\n\t\t\t<div class=\"calendar-field-block\" style=\"display: none\">\n\t\t\t\t${this.DOM.typeInfoTitle}\n\t\t\t\t${this.DOM.typeInfoLink}\n\t\t\t</div>\n\t\t`;\n\t\treturn this.DOM.typeInfoWrap;\n\t}\n\n\tgetRRuleInfoControl()\n\t{\n\t\tthis.DOM.rruleInfo = Tag.render`<div class=\"calendar-text\"></div>`;\n\t\tthis.DOM.rruleInfoWrap = Tag.render`\n\t\t\t<div class=\"calendar-field-block\" style=\"display: none\">\n\t\t\t\t<div class=\"calendar-field-title\">${Loc.getMessage('EC_REPEAT')}:</div>\n\t\t\t\t${this.DOM.rruleInfo}\n\t\t\t</div>\n\t\t`;\n\t\treturn this.DOM.rruleInfoWrap;\n\t}\n\n\tgetTimezoneInfoControl()\n\t{\n\t\tthis.DOM.timezoneInfo = Tag.render`<div class=\"calendar-text\"></div>`;\n\t\tthis.DOM.timezoneInfoWrap = Tag.render`\n\t\t\t<div class=\"calendar-field-block\" style=\"display: none\">\n\t\t\t\t<div class=\"calendar-field-title\">${Loc.getMessage('EC_TIMEZONE')}:</div>\n\t\t\t\t${this.DOM.timezoneInfo}\n\t\t\t</div>\n\t\t`;\n\t\treturn this.DOM.timezoneInfoWrap;\n\t}\n\n\tisNewEntry()\n\t{\n\t\treturn !this.entry.id;\n\t}\n\n\tcanDo(action)\n\t{\n\t\tconst section = this.getCurrentSection();\n\n\t\tif (action === 'edit' || action === 'delete')\n\t\t{\n\t\t\tif ((this.entry.isMeeting() && this.entry.id !== this.entry.parentId))\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tif (this.entry.isResourcebooking())\n\t\t\t{\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\treturn section.canDo('edit');\n\t\t}\n\n\t\tif (action === 'view')\n\t\t{\n\t\t\treturn section.canDo('view_time');\n\t\t}\n\n\t\tif (action === 'viewFull')\n\t\t{\n\t\t\treturn section.canDo('view_full');\n\t\t}\n\n\t\tif(action === 'release')\n\t\t{\n\t\t\treturn section.canDo('access');\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tsetFormValues()\n\t{\n\t\tconst entry = this.entry;\n\t\tconst section = this.getCurrentSection();\n\t\tconst readOnly = !this.canDo('edit');\n\n\t\t// Date time\n\t\tthis.dateTimeControl.setValue({\n\t\t\tfrom: Util.adjustDateForTimezoneOffset(entry.from, entry.userTimezoneOffsetFrom, entry.fullDay),\n\t\t\tto: Util.adjustDateForTimezoneOffset(entry.to, entry.userTimezoneOffsetTo, entry.fullDay),\n\t\t\tfullDay: entry.fullDay,\n\t\t\ttimezoneFrom: entry.getTimezoneFrom() || '',\n\t\t\ttimezoneTo: entry.getTimezoneTo() || '',\n\t\t\ttimezoneName: this.userSettings.timezoneName,\n\t\t});\n\t\tthis.dateTimeControl.setInlineEditMode(this.isNewEntry() ? 'edit' : 'view');\n\t\tthis.dateTimeControl.setViewMode(readOnly);\n\n\t\t// Title\n\t\tthis.DOM.titleInput.value = entry.getName();\n\n\t\tif (readOnly)\n\t\t{\n\t\t\tif (this.entry.getCurrentStatus() === false)\n\t\t\t{\n\t\t\t\tthis.DOM.titleInput.type = 'hidden'; // Hide input\n\t\t\t\t// Add label instead\n\t\t\t\tthis.DOM.titleLabel = this.DOM.titleInput.parentNode.insertBefore(Tag.render`<span class=\"calendar-field calendar-field-string\">${Text.encode(entry.getName())}</span>`, this.DOM.titleInput);\n\t\t\t\tDom.addClass(this.DOM.titleOuterWrap, 'calendar-field-container-view');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.DOM.titleInput.disabled = true;\n\t\t\t}\n\t\t}\n\n\t\t// Color\n\t\tthis.colorSelector.setValue(entry.getColor() || section.color, false);\n\t\tthis.colorSelector.setViewMode(readOnly && this.entry.getCurrentStatus() === false);\n\n\t\t// Section\n\t\tthis.sectionValue = this.getCurrentSectionId();\n\t\tthis.sectionSelector.updateValue();\n\t\tif (this.isSyncSection(section) && entry.id)\n\t\t{\n\t\t\tthis.sectionSelector.setViewMode(true);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.sectionSelector.setViewMode(readOnly);\n\t\t}\n\n\t\t// Reminders\n\t\tthis.remindersControl.setValue(entry.getReminders(), false);\n\t\tthis.remindersControl.setViewMode(readOnly && this.entry.getCurrentStatus() === false);\n\t\tif (readOnly && this.entry.getCurrentStatus() === false)\n\t\t{\n\t\t\tthis.DOM.remindersOuterWrap.style.display = 'none';\n\t\t}\n\n\t\t// Recurcion\n\t\tif (entry.isRecursive())\n\t\t{\n\t\t\tthis.DOM.rruleInfoWrap.style = '';\n\t\t\tDom.adjust(this.DOM.rruleInfo, {text: entry.getRRuleDescription()});\n\t\t}\n\n\t\t// Location\n\t\tlet location = entry.getLocation();\n\t\tif (readOnly && !location)\n\t\t{\n\t\t\tthis.DOM.locationOuterWrap.style.display = 'none';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.locationSelector.setViewMode(readOnly);\n\t\t\tif (this.isLocationCalendar)\n\t\t\t{\n\t\t\t\tthis.locationSelector.setValue(this.locationSelector.default);\n\t\t\t\tlocation = this.locationSelector.default;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.DOM.locationOuterWrap.style.display = '';\n\t\t\t\tthis.locationSelector.setValue(entry.getLocation());\n\t\t\t}\n\t\t}\n\t\tif (this.locationSelector)\n\t\t{\n\t\t\tthis.locationSelector.checkLocationAccessibility(\n\t\t\t\t{\n\t\t\t\t\tfrom: this.dateTimeControl.getValue().from,\n\t\t\t\t\tto: this.dateTimeControl.getValue().to,\n\t\t\t\t\tfullDay: this.dateTimeControl.getValue().fullDay,\n\t\t\t\t\tcurrentEventId: this.entry.id\n\t\t\t\t},\n\t\t\t);\n\t\t}\n\n\t\t//User Planner Selector\n\t\tif (\n\t\t\tthis.userPlannerSelector\n\t\t\t&& (this.canDo('viewFull') || entry.getCurrentStatus() !== false)\n\t\t)\n\t\t{\n\t\t\tthis.userPlannerSelector.setValue({\n\t\t\t\tattendeesEntityList: entry.getAttendeesEntityList(),\n\t\t\t\tlocation: location,\n\t\t\t\tattendees: entry.getAttendees(),\n\t\t\t\tnotify: !entry.isMeeting() || entry.getMeetingNotify(),\n\t\t\t\tviewMode: this.getMode() === CompactEventForm.VIEW_MODE,\n\t\t\t\tentry: entry,\n\t\t\t\thideGuests: entry.getHideGuests()\n\t\t\t});\n\t\t\tthis.userPlannerSelector.setDateTime(this.dateTimeControl.getValue());\n\t\t\tthis.userPlannerSelector.setViewMode(readOnly);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.remove(this.DOM.userPlannerSelectorOuterWrap);\n\t\t}\n\n\t\tlet hideInfoContainer = true;\n\t\tthis.DOM.infoContainer = this.DOM.wrap.querySelector('.calendar-field-container-info');\n\t\tfor(let i = 0; i <= this.DOM.infoContainer.childNodes.length; i++)\n\t\t{\n\t\t\tif (\n\t\t\t\tType.isElementNode(this.DOM.infoContainer.childNodes[i])\n\t\t\t\t&& this.DOM.infoContainer.childNodes[i].style.display !== 'none'\n\t\t\t)\n\t\t\t{\n\t\t\t\thideInfoContainer = false;\n\t\t\t}\n\t\t}\n\t\tif (hideInfoContainer)\n\t\t{\n\t\t\tthis.DOM.infoContainer.style.display = 'none';\n\t\t}\n\t}\n\n\tsetFormValuesLocation()\n\t{\n\t\tlet\n\t\t\tentry = this.entry,\n\t\t\tsection = this.getCurrentSection(),\n\t\t\treadOnly = true;\n\n\t\t// Date time\n\t\tthis.dateTimeControl.setValue({\n\t\t\tfrom: Util.adjustDateForTimezoneOffset(entry.from, entry.userTimezoneOffsetFrom, entry.fullDay),\n\t\t\tto: Util.adjustDateForTimezoneOffset(entry.to, entry.userTimezoneOffsetTo, entry.fullDay),\n\t\t\tfullDay: entry.fullDay,\n\t\t\ttimezoneFrom: entry.getTimezoneFrom() || '',\n\t\t\ttimezoneTo: entry.getTimezoneTo() || '',\n\t\t\ttimezoneName: this.userSettings.timezoneName,\n\t\t});\n\t\tthis.dateTimeControl.setInlineEditMode(this.isNewEntry() ? 'edit' : 'view');\n\t\tthis.dateTimeControl.setViewMode(readOnly);\n\n\t\t// Title\n\t\tif (this.entry.id !== this.entry.parentId)\n\t\t{\n\t\t\tthis.DOM.titleInput.value = section.name\n\t\t\t\t+ ': ' + BX.util.htmlspecialchars(entry.getName());\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.DOM.titleInput.value = Loc.getMessage('CALENDAR_UPDATE');\n\t\t}\n\n\t\t// Color\n\t\tthis.colorSelector.setValue(entry.getColor() || section.color, false);\n\t\tthis.colorSelector.setViewMode(!readOnly);\n\n\t\t// Section\n\t\tthis.sectionValue = this.getCurrentSectionId();\n\t\tthis.sectionSelector.updateValue();\n\t\tthis.sectionSelector.setViewMode(readOnly);\n\t}\n\n\tsave(options = {}): boolean\n\t{\n\t\tif (this.state === this.STATE.REQUEST)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tconst entry = this.getCurrentEntry();\n\t\toptions = Type.isPlainObject(options) ? options : {};\n\n\t\tif (\n\t\t\tthis.isNewEntry()\n\t\t\t&& this.userPlannerSelector.hasExternalEmailUsers()\n\t\t\t&& Util.checkEmailLimitationPopup()\n\t\t\t&& !options.emailLimitationDialogShown\n\t\t)\n\t\t{\n\t\t\tEntryManager.showEmailLimitationDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\toptions.emailLimitationDialogShown = true;\n\t\t\t\t\tthis.save(options);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\t!this.userSettings.sendFromEmail\n\t\t\t&& this.userPlannerSelector.hasExternalEmailUsers()\n\t\t)\n\t\t{\n\t\t\tEntryManager.showConfirmedEmailDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\tthis.save(options);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\t!this.isNewEntry()\n\t\t\t&& entry.isRecursive()\n\t\t\t&& !options.confirmed\n\t\t\t&& this.getFormDataChanges(['section', 'notify']).length > 0\n\t\t)\n\t\t{\n\t\t\tEntryManager.showConfirmEditDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\toptions.recursionMode = (entry.isFirstInstance() && params.recursionMode === 'next')\n\t\t\t\t\t\t? 'all'\n\t\t\t\t\t\t: params.recursionMode;\n\t\t\t\t\toptions.confirmed = true;\n\t\t\t\t\tthis.save(options);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\t!this.isNewEntry()\n\t\t\t&& entry.isMeeting()\n\t\t\t&& options.sendInvitesAgain === undefined\n\t\t\t&& this.getFormDataChanges().includes('date&time')\n\t\t\t&& entry.getAttendees().find((item) => {return item.STATUS === 'N';})\n\t\t)\n\t\t{\n\t\t\tEntryManager.showReInviteUsersDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\toptions.sendInvitesAgain = params.sendInvitesAgain;\n\t\t\t\t\tthis.save(options);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn false;\n\t\t}\n\n\t\tif (\n\t\t\t!this.isNewEntry()\n\t\t\t&& entry.isRecursive()\n\t\t\t&& !options.confirmed\n\t\t\t&& this.getFormDataChanges().includes('section')\n\t\t)\n\t\t{\n\t\t\toptions.recursionMode = entry.isFirstInstance() ? 'all' : 'next';\n\t\t}\n\n\t\tconst dateTime = this.dateTimeControl.getValue();\n\t\tconst data = {\n\t\t\tid: entry.id,\n\t\t\tsection: this.sectionValue,\n\t\t\tname: this.DOM.titleInput.value,\n\t\t\tdesc: entry.getDescription(),\n\t\t\treminder: this.remindersControl.getSelectedValues(),\n\t\t\tdate_from: dateTime.fromDate,\n\t\t\tdate_to: dateTime.toDate,\n\t\t\tskip_time: dateTime.fullDay ? 'Y' : 'N',\n\t\t\ttime_from: Util.formatTime(Util.adjustDateForTimezoneOffset(dateTime.from, -entry.userTimezoneOffsetFrom, dateTime.fullDay)),\n\t\t\ttime_to: Util.formatTime(Util.adjustDateForTimezoneOffset(dateTime.to, -entry.userTimezoneOffsetTo, dateTime.fullDay)),\n\t\t\tlocation: this.locationSelector.getTextValue(),\n\t\t\ttz_from: entry.getTimezoneFrom(),\n\t\t\ttz_to: entry.getTimezoneTo(),\n\t\t\tmeeting_notify: this.userPlannerSelector.getInformValue() ? 'Y' : 'N',\n\t\t\tmeeting_host: entry.data.MEETING_HOST || '0',\n\t\t\tchat_id: entry.data.MEETING\n\t\t\t\t? entry.data.MEETING.CHAT_ID\n\t\t\t\t: 0,\n\t\t\texclude_users: this.excludeUsers || [],\n\t\t\tattendeesEntityList: this.userPlannerSelector.getEntityList(),\n\t\t\tsendInvitesAgain: options.sendInvitesAgain ? 'Y' : 'N',\n\t\t\thide_guests: this.userPlannerSelector.hideGuests ? 'Y' : 'N',\n\t\t\trequestUid: BX.Calendar.Util.registerRequestId(),\n\t\t\tprivate_event: entry.isPrivate() ? 'Y' : 'N'\n\t\t};\n\n\t\tlet checkCurrentUsersAccessibility = !entry.id || this.checkCurrentUsersAccessibility();\n\t\tif (!checkCurrentUsersAccessibility\n\t\t\t&& this.getFormDataChanges().includes('codes'))\n\t\t{\n\t\t\tconst previousAttendeesList = entry.getAttendeesEntityList();\n\t\t\tconst newAttendeesList = [];\n\t\t\tdata.attendeesEntityList.forEach(entity => {\n\t\t\t\tif (!previousAttendeesList.find((item) => {\n\t\t\t\t\treturn entity.entityId === item.entityId\n\t\t\t\t\t\t&& parseInt(entity.id) === parseInt(item.id);\n\t\t\t\t}))\n\t\t\t\t{\n\t\t\t\t\tif (entity.entityId === 'user')\n\t\t\t\t\t{\n\t\t\t\t\t\tnewAttendeesList.push(entity.id);\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tcheckCurrentUsersAccessibility = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t\tdata.newAttendeesList = newAttendeesList;\n\t\t}\n\t\tdata.checkCurrentUsersAccessibility = checkCurrentUsersAccessibility ? 'Y' : 'N';\n\n\t\tif (entry.id && entry.isRecursive())\n\t\t{\n\t\t\tdata.EVENT_RRULE = entry.data.RRULE;\n\t\t}\n\n\t\tif (options.recursionMode)\n\t\t{\n\t\t\tdata.rec_edit_mode = options.recursionMode;\n\t\t\tdata.current_date_from = Util.formatDate(entry.from);\n\t\t}\n\n\t\tif (this.getCurrentSection().color.toLowerCase() !== this.colorSelector.getValue().toLowerCase())\n\t\t{\n\t\t\tdata.color = this.colorSelector.getValue();\n\t\t}\n\n\t\tthis.state = this.STATE.REQUEST;\n\n\t\tthis.freezePopup();\n\t\tthis.BX.ajax.runAction('calendar.api.calendarentryajax.editEntry', {\n\t\t\t\tdata: data,\n\t\t\t\tanalyticsLabel: {\n\t\t\t\t\tcalendarAction: this.isNewEntry() ? 'create_event' : 'edit_event',\n\t\t\t\t\tformType: 'compact',\n\t\t\t\t\temailGuests: this.userPlannerSelector.hasExternalEmailUsers() ? 'Y' : 'N',\n\t\t\t\t\tmarkView: Util.getCurrentView() || 'outside',\n\t\t\t\t\tmarkCrm: 'N',\n\t\t\t\t\tmarkRrule: 'NONE',\n\t\t\t\t\tmarkMeeting: this.entry.isMeeting() ? 'Y' : 'N',\n\t\t\t\t\tmarkType: this.type\n\t\t\t\t}\n\t\t\t})\n\t\t\t.then((response) => {\n\t\t\t\t\tif (this.isLocationCalendar && this.roomsManager)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.roomsManager.unsetHiddenRoom(Location.parseStringValue(data.location).room_id);\n\t\t\t\t\t}\n\n\t\t\t\t\t// unset section from hidden\n\t\t\t\t\tconst section = this.getCurrentSection();\n\t\t\t\t\tif (section && !section.isShown())\n\t\t\t\t\t{\n\t\t\t\t\t\tsection.show();\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.unfreezePopup();\n\t\t\t\t\tthis.state = this.STATE.READY;\n\t\t\t\t\tif (response.data.entryId)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (entry.id)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tEntryManager.showEditEntryNotification(response.data.entryId);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tEntryManager.showNewEntryNotification(response.data.entryId);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.emit('onSave', new BaseEvent({\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\tresponseData: response.data,\n\t\t\t\t\t\t\toptions: options\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\t\t\t\t\tthis.close();\n\n\t\t\t\t\tif (response.data.countEventWithEmailGuestAmount)\n\t\t\t\t\t{\n\t\t\t\t\t\tUtil.setEventWithEmailGuestAmount(response.data.countEventWithEmailGuestAmount);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (Type.isArray(response.data.eventList)\n\t\t\t\t\t\t&& response.data.eventList.length\n\t\t\t\t\t\t&& response.data.eventList[0].REMIND\n\t\t\t\t\t)\n\t\t\t\t\t{\n\t\t\t\t\t\tEntryManager.setNewEntryReminders(\n\t\t\t\t\t\t\tdateTime.fullDay ? 'fullDay' : 'withTime',\n\t\t\t\t\t\t\tresponse.data.eventList[0].REMIND\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t(response) => {\n\t\t\t\t\tthis.unfreezePopup();\n\t\t\t\t\tif (response.data && Type.isPlainObject(response.data.busyUsersList))\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.handleBusyUsersError(response.data.busyUsersList);\n\n\t\t\t\t\t\tlet errors = [];\n\t\t\t\t\t\tresponse.errors.forEach((error) => {\n\t\t\t\t\t\t\tif (error.code !== \"edit_entry_user_busy\")\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\terrors.push(error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\tresponse.errors = errors;\n\t\t\t\t\t}\n\n\t\t\t\t\tif (response.errors && response.errors.length)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.showError(response.errors);\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.state = this.STATE.ERROR;\n\t\t\t\t}\n\t\t\t);\n\n\t\treturn true;\n\t}\n\n\thandleBusyUsersError(busyUsers)\n\t{\n\t\tlet\n\t\t\tusers = [],\n\t\t\tuserIds = [];\n\n\t\tfor (let id in busyUsers)\n\t\t{\n\t\t\tif (busyUsers.hasOwnProperty(id))\n\t\t\t{\n\t\t\t\tusers.push(busyUsers[id]);\n\t\t\t\tuserIds.push(id);\n\t\t\t}\n\t\t}\n\n\t\tthis.busyUsersDialog = new BusyUsersDialog();\n\t\tthis.busyUsersDialog.subscribe('onSaveWithout', () => {\n\t\t\tthis.excludeUsers = userIds.join(',');\n\t\t\tthis.save();\n\t\t});\n\n\t\tthis.busyUsersDialog.show({users: users});\n\t}\n\n\thandleKeyPress(e)\n\t{\n\t\tif (\n\t\t\tthis.getMode() === CompactEventForm.EDIT_MODE\n\t\t\t&& e.keyCode === Util.getKeyCode('enter')\n\t\t\t&& (e.ctrlKey || e.metaKey) && !e.altKey\n\t\t)\n\t\t{\n\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\tthis.locationSelector.selectContol.onChangeCallback();\n\t\t\tthis.save();\n\t\t}\n\t\telse if (\n\t\t\tthis.checkTopSlider()\n\t\t\t&& e.keyCode === Util.getKeyCode('escape')\n\t\t\t&& e.type === 'keyup'\n\t\t\t&& this.couldBeClosedByEsc()\n\t\t)\n\t\t{\n\t\t\tthis.close();\n\t\t}\n\t\telse if (\n\t\t\te.keyCode === Util.getKeyCode('delete')\n\t\t\t&& !this.isNewEntry()\n\t\t\t&& this.canDo('delete')\n\t\t)\n\t\t{\n\t\t\tconst target = event.target || event.srcElement;\n\t\t\tconst tagName = Type.isElementNode(target) ? target.tagName.toLowerCase() : null;\n\t\t\tif (tagName && !['input', 'textarea'].includes(tagName))\n\t\t\t{\n\t\t\t\tEventEmitter.subscribeOnce('BX.Calendar.Entry:beforeDelete', () => {\n\t\t\t\t\tthis.checkDataBeforeCloseMode = false;\n\t\t\t\t\tthis.close();\n\t\t\t\t});\n\t\t\t\tEntryManager.deleteEntry(this.entry);\n\t\t\t}\n\t\t}\n\t\telse if (\n\t\t\te.keyCode === Util.getKeyCode('enter')\n\t\t\t&& this.DOM.confirmPopup\n\t\t)\n\t\t{\n\t\t\tthis.close(true, true);\n\t\t}\n\t}\n\n\tgetCurrentEntry()\n\t{\n\t\treturn this.entry;\n\t}\n\n\tgetCurrentSection()\n\t{\n\t\tlet section = false;\n\t\tconst sectionId = this.getCurrentSectionId();\n\n\t\tif (\n\t\t\tsectionId\n\t\t\t&& this.sectionIndex[sectionId] !== undefined\n\t\t\t&& this.sections[this.sectionIndex[sectionId]] !== undefined)\n\t\t{\n\t\t\tsection = this.sections[this.sectionIndex[sectionId]];\n\t\t}\n\t\treturn section;\n\t}\n\n\tgetCurrentSectionId()\n\t{\n\t\tlet sectionId = 0;\n\t\tif (this.sectionValue)\n\t\t{\n\t\t\tsectionId = this.sectionValue;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tconst entry = this.getCurrentEntry();\n\t\t\tif (entry instanceof Entry)\n\t\t\t{\n\t\t\t\tsectionId = parseInt(entry.sectionId);\n\t\t\t}\n\n\t\t\t// TODO: refactor - don't take first section\n\t\t\tif (!sectionId && this.sections[0])\n\t\t\t{\n\t\t\t\tsectionId = parseInt(this.sections[0].id);\n\t\t\t}\n\t\t}\n\t\treturn sectionId;\n\t}\n\n\thandlePlannerSelectorChanges(event)\n\t{\n\t\tif (event instanceof BaseEvent)\n\t\t{\n\t\t\tconst dateTimeValue = this.dateTimeControl.getValue();\n\t\t\tdateTimeValue.from = event.getData().dateFrom;\n\t\t\tdateTimeValue.to = event.getData().dateTo;\n\t\t\t// Date time\n\t\t\tthis.dateTimeControl.setValue(dateTimeValue);\n\t\t\tthis.userPlannerSelector.setDateTime(this.dateTimeControl.getValue());\n\n\t\t\tif (this.locationSelector)\n\t\t\t{\n\t\t\t\tthis.locationSelector.checkLocationAccessibility(\n\t\t\t\t\t{\n\t\t\t\t\t\tfrom: event.getData().dateFrom,\n\t\t\t\t\t\tto: event.getData().dateTo,\n\t\t\t\t\t\tfullDay: event.getData().fullDay,\n\t\t\t\t\t\tcurrentEventId: this.entry.id\n\t\t\t\t\t},\n\t\t\t\t)\n\t\t\t}\n\t\t\tthis.checkForChangesDebounce();\n\t\t}\n\t}\n\n\teditEntryInSlider()\n\t{\n\t\tthis.checkDataBeforeCloseMode = false;\n\t\tconst dateTime = this.dateTimeControl.getValue();\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\tBX.Calendar.EntryManager.openEditSlider({\n\t\t\tcalendarContext: calendarContext,\n\t\t\tentry: this.entry,\n\t\t\ttype: this.type,\n\t\t\tisLocationCalendar: this.isLocationCalendar,\n\t\t\tlocationAccess: this.locationAccess,\n\t\t\tdayOfWeekMonthFormat: this.dayOfWeekMonthFormat,\n\t\t\troomsManager: this.roomsManager,\n\t\t\tlocationCapacity: Location.getCurrentCapacity(), // for location component\n\t\t\townerId: this.ownerId,\n\t\t\tuserId: this.userId,\n\t\t\tformDataValue: {\n\t\t\t\tsection: this.sectionValue,\n\t\t\t\tname: this.DOM.titleInput.value,\n\t\t\t\treminder: this.remindersControl.getSelectedRawValues(),\n\t\t\t\tcolor: this.colorSelector.getValue(),\n\t\t\t\tfrom: Util.adjustDateForTimezoneOffset(dateTime.from, -this.entry.userTimezoneOffsetFrom, dateTime.fullDay),\n\t\t\t\tto: Util.adjustDateForTimezoneOffset(dateTime.to, -this.entry.userTimezoneOffsetTo, dateTime.fullDay),\n\t\t\t\tfullDay: dateTime.fullDay,\n\t\t\t\tlocation: this.locationSelector.getTextValue(),\n\t\t\t\tmeetingNotify: this.userPlannerSelector.getInformValue() ? 'Y' : 'N',\n\t\t\t\thideGuests: this.userPlannerSelector.hideGuests ? 'Y' : 'N',\n\t\t\t\tattendeesEntityList: this.userPlannerSelector.getEntityList()\n\t\t\t}\n\t\t});\n\t\tthis.close();\n\t}\n\n\toutsideMouseDownClose(event)\n\t{\n\t\tlet target = event.target || event.srcElement;\n\t\tthis.outsideMouseDown = !target.closest('div.popup-window');\n\t}\n\n\tcheckTopSlider()\n\t{\n\t\treturn !Util.getBX().SidePanel.Instance.getTopSlider();\n\t}\n\n\tcheckOutsideClickClose(event)\n\t{\n\t\tlet target = event.target || event.srcElement;\n\t\tthis.outsideMouseUp = !target.closest('div.popup-window');\n\t\tif (this.couldBeClosedByEsc()\n\t\t\t&& this.outsideMouseDown\n\t\t\t&& this.outsideMouseUp\n\t\t\t&& (this.getMode() === CompactEventForm.VIEW_MODE\n\t\t\t\t|| !this.formDataChanged()\n\t\t\t\t|| this.isNewEntry())\n\t\t)\n\t\t{\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.close(false);\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\tcouldBeClosedByEsc()\n\t{\n\t\treturn !PopupManager._popups.find((popup)=>{return popup && popup.getId() !== this.popupId && popup.isShown();});\n\t}\n\n\temitOnChange()\n\t{\n\t\tthis.emit('onChange', new BaseEvent({\n\t\t\tdata: {\n\t\t\t\tform: this,\n\t\t\t\tentry: this.entry\n\t\t\t}\n\t\t}));\n\t}\n\n\tshowError(errorList)\n\t{\n\t\tlet errorText = '';\n\n\t\tif (Type.isArray(errorList))\n\t\t{\n\t\t\terrorList.forEach((error) => {\n\t\t\t\terrorText += error.message + \"\\n\";\n\t\t\t});\n\t\t}\n\n\t\tif (errorText !== '')\n\t\t{\n\t\t\talert(errorText);\n\t\t}\n\t}\n\n\treloadEntryData()\n\t{\n\t\tif (this.isShown()\n\t\t\t&& !this.isNewEntry()\n\t\t\t&& this.getMode() === CompactEventForm.VIEW_MODE)\n\t\t{\n\t\t\tconst calendar = Util.getCalendarContext();\n\t\t\tif (calendar)\n\t\t\t{\n\t\t\t\tconst entry = EntryManager.getEntryInstance(\n\t\t\t\t\tcalendar.getView().getEntryById(this.entry.getUniqueId())\n\t\t\t\t);\n\n\t\t\t\tif (entry && entry.getUniqueId())\n\t\t\t\t{\n\t\t\t\t\tthis.entry = entry;\n\t\t\t\t\tthis.setFormValues();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tcheckCurrentUsersAccessibility()\n\t{\n\t\treturn this.getFormDataChanges().includes('date&time');\n\t}\n\n\thandlePull(params)\n\t{\n\t\tif (\n\t\t\tthis.userPlannerSelector\n\t\t\t&& this.userPlannerSelector?.planner?.isShown()\n\t\t)\n\t\t{\n\t\t\tconst userIdList = Type.isArray(params?.fields?.ATTENDEES) ? params.fields.ATTENDEES: [];\n\t\t\tconst eventOwner = params?.fields?.CAL_TYPE === 'user'\n\t\t\t\t? parseInt(params?.fields?.OWNER_ID)\n\t\t\t\t: parseInt(params?.fields?.CREATED_BY);\n\t\t\tif (!userIdList.includes(eventOwner))\n\t\t\t{\n\t\t\t\tuserIdList.push(eventOwner);\n\t\t\t}\n\t\t\tthis.userPlannerSelector.clearAccessibilityData(userIdList);\n\n\t\t\tthis.userPlannerSelector.refreshPlannerStateDebounce();\n\t\t}\n\n\t\tconst entry = this.getCurrentEntry();\n\t\tif (\n\t\t\t!this.isNewEntry()\n\t\t\t&& entry\n\t\t\t&& entry.parentId === parseInt(params?.fields?.PARENT_ID)\n\t\t)\n\t\t{\n\t\t\tif (params.command === 'delete_event'\n\t\t\t\t&& entry.getType() === params?.fields?.CAL_TYPE)\n\t\t\t{\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tconst onEntryListReloadHandler = () => {\n\t\t\t\t\tthis.reloadEntryDataDebounce();\n\t\t\t\t\tBX.Event.EventEmitter.unsubscribe('BX.Calendar:onEntryListReload', onEntryListReloadHandler);\n\t\t\t\t};\n\t\t\t\tBX.Event.EventEmitter.subscribe('BX.Calendar:onEntryListReload', onEntryListReloadHandler);\n\t\t\t}\n\t\t}\n\t}\n\n\tisSyncSection(section)\n\t{\n\t\treturn section.isGoogle()\n\t\t\t|| section.isIcloud()\n\t\t\t|| section.isOffice365()\n\t\t\t|| section.isCalDav()\n\t\t\t|| section.hasConnection()\n\t\t;\n\t}\n\n\tgetSectionsForEditEvent(sections, currentSection)\n\t{\n\t\tconst result = [];\n\t\tconst currentType = currentSection.type;\n\t\tresult.push(currentSection);\n\n\t\tsections.forEach((section) => {\n\t\t\tif (!this.isSyncSection(section) && section.type === currentType)\n\t\t\t{\n\t\t\t\tresult.push(section);\n\t\t\t}\n\t\t});\n\n\t\tthis.sections = result;\n\t\tthis.sectionIndex = [];\n\t\tif (Type.isArray(this.sections))\n\t\t{\n\t\t\tthis.sections.forEach((value, ind) => {\n\t\t\t\tconst id = parseInt(value.ID || value.id);\n\t\t\t\tif (id > 0)\n\t\t\t\t{\n\t\t\t\t\tthis.sectionIndex[id] = ind;\n\t\t\t\t}\n\t\t\t}, this);\n\t\t}\n\t}\n\n\treleaseLocation(options = {})\n\t{\n\t\tconst entry = this.getCurrentEntry();\n\n\t\tif (entry.id && entry.isRecursive()\n\t\t\t&& !options.confirmed\n\t\t)\n\t\t{\n\t\t\tEntryManager.showConfirmEditDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\toptions.confirmed = true;\n\t\t\t\t\tthis.releaseLocation({\n\t\t\t\t\t\trecursionMode: params.recursionMode,\n\t\t\t\t\t\tconfirmed: true\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn false;\n\t\t}\n\n\t\tif(!options.recursionMode)\n\t\t{\n\t\t\toptions.recursionMode = '';\n\t\t}\n\n\t\tthis.state = this.STATE.REQUEST;\n\n\t\tthis.freezePopup();\n\n\t\tthis.BX.ajax.runAction('calendar.api.locationajax.cancelBooking', {\n\t\t\tdata:{\n\t\t\t\tparent_event_id: entry.parentId,\n\t\t\t\trecursion_mode: options.recursionMode,\n\t\t\t\tsection_id: entry.sectionId,\n\t\t\t\tcurrent_event_date_from: entry.data.DATE_FROM,\n\t\t\t\tcurrent_event_date_to: entry.data.DATE_TO,\n\t\t\t\towner_id: entry.data.CREATED_BY,\n\t\t\t}\n\t\t})\n\t\t.then(\n\t\t\t(response) => {\n\t\t\t\tthis.unfreezePopup();\n\t\t\t\tthis.state = this.STATE.READY;\n\t\t\t\tEntryManager.showReleaseLocationNotification();\n\t\t\t\tthis.calendarContext.reloadDebounce();\n\t\t\t\tthis.close();\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\tthis.unfreezePopup();\n\t\t\t\tthis.state = this.STATE.ERROR;\n\t\t\t\tthis.close();\n\t\t\t}\n\t\t);\n\n\t\treturn true;\n\t}\n\n\tshowConfirmClosePopup()\n\t{\n\t\tthis.DOM.confirmPopup = new MessageBox({\n\t\t\tmessage: this.getConfirmContent(),\n\t\t\tminHeight: 120,\n\t\t\tminWidth: 280,\n\t\t\tmaxWidth: 300,\n\t\t\tbuttons: BX.UI.Dialogs.MessageBoxButtons.OK_CANCEL,\n\t\t\tonOk: () => {\n\t\t\t\tthis.close(true, true);\n\t\t\t},\n\t\t\tonCancel: () => {\n\t\t\t\tthis.DOM.confirmPopup.close();\n\t\t\t},\n\t\t\tokCaption: Loc.getMessage('EC_SEC_SLIDER_CLOSE'),\n\t\t\tpopupOptions: {\n\t\t\t\tevents: {\n\t\t\t\t\tonPopupClose: () => {\n\t\t\t\t\t\tdelete this.DOM.confirmPopup;\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tcloseByEsc: true,\n\t\t\t\tpadding: 0,\n\t\t\t\tcontentPadding: 0,\n\t\t\t\tanimation: 'fading-slide',\n\t\t\t}\n\t\t});\n\n\t\tthis.DOM.confirmPopup.show();\n\t}\n\n\tgetConfirmContent()\n\t{\n\t\treturn Tag.render`\n\t\t\t<div class=\"calendar-list-slider-messagebox-text\">${Loc.getMessage('EC_LEAVE_EVENT_CONFIRM_QUESTION') \n\t\t\t\t+ '<br>' \n\t\t\t\t+ Loc.getMessage('EC_LEAVE_EVENT_CONFIRM_DESC')}</div>\n\t\t`;\n\t}\n}"],"names":["CompactEventForm","EventEmitter","constructor","options","STATE","READY","REQUEST","ERROR","zIndex","Z_INDEX_OFFSET","userSettings","DOM","displayed","sections","sectionIndex","trackingUsersList","checkDataBeforeCloseMode","CHECK_CHANGES_DELAY","RELOAD_DATA_DELAY","setEventNamespace","userId","Util","getCurrentUserId","type","isLocationCalendar","calendarContext","ownerId","BX","getBX","checkForChangesDebounce","Runtime","debounce","checkForChanges","reloadEntryDataDebounce","reloadEntryData","checkOutsideClickClose","bind","outsideMouseDownClose","keyHandler","handleKeyPress","show","mode","EDIT_MODE","params","setParams","setMode","state","popupId","Math","round","random","popup","destroy","getPopup","Dom","addClass","titleBar","removeClass","popupContainer","closeIcon","Event","document","getMode","EntryManager","doDelayedActions","prepareData","then","checkLocationView","setFormValuesLocation","setFormValues","userPlannerSelector","attendeesEntityList","length","VIEW_MODE","showPlanner","canDo","titleInput","focus","select","sendAnalyticLabel","calendarAction","formType","getButtons","button","isPlannerDisplayed","checkBusyTime","Popup","bindNode","closeByEsc","offsetTop","offsetLeft","draggable","resizable","lightShadow","className","cacheable","content","getPopupContentLocation","getPopupContentCalendar","buttons","events","onPopupClose","close","isShown","fromButton","fromPopup","checkTopSlider","destroyed","setTimeout","formDataChanged","showConfirmClosePopup","emit","unbind","Location","setCurrentCapacity","clearPlannerWatches","closeAllPopups","wrap","Tag","render","titleOuterWrap","getEntryCounter","getTitleControl","getColorControl","getSectionControl","getDateTimeControl","getUserPlannerSelector","getTypeInfoControl","getLocationControl","remindersOuterWrap","Loc","getMessage","createRemindersControl","getRRuleInfoControl","getTitleControlLocation","getColorControlsLocationView","entry","id","parentId","appendChild","getHostControl","saveBtn","UI","Button","name","text","isNewEntry","click","save","setAttribute","push","closeBtn","setButtons","fullFormBtn","editEntryInSlider","isMeeting","getCurrentStatus","acceptBtn","setMeetingStatus","refreshMeetingStatus","declineBtn","Calendar","openViewSlider","from","timezoneOffset","data","TZ_OFFSET_FROM","releaseLocation","openBtn","subscribeOnce","deleteEntry","wasEverRecursive","freezePopup","forEach","setClocking","setDisabled","unfreezePopup","isInvited","entryCounter","displayAttendees","getAttendees","hideLoader","Type","isDomNode","loader","remove","showInEditMode","showInViewMode","emitOnChange","checkLocationForm","event","BaseEvent","getData","usersCount","locationCapacity","getCurrentCapacity","locationSelector","value","undefined","addCapacityAlert","removeCapacityAlert","getFormDataChanges","excludes","fields","includes","getTextLocation","parseStringValue","getLocation","getTextValue","dateTime","dateTimeControl","getValue","isFullDay","fullDay","toString","to","getMeetingNotify","getInformValue","parseInt","sectionId","sectionValue","getEntityList","map","item","entityId","join","getAttendeesEntityList","locationAccess","dayOfWeekMonthFormat","getEntryInstance","userIndex","isPlainObject","entryTime","isDate","setDateTimeValue","locationFeatureEnabled","locationList","isArray","filter","locationItem","PERM","view_full","roomsManager","iblockMeetingRoomList","plannerFeatureEnabled","setSections","trackingUserList","ind","ID","section","getCurrentSection","getSectionsForEditEvent","Promise","resolve","ajax","runAction","entryId","loadSectionId","response","window","BXEventCalendar","Section","getCalendarContext","CREATED_BY","userUrl","USER_URL","replace","userAvatar","AVATAR","hostBar","util","htmlspecialchars","colorSelect","colorSelector","ColorSelector","subscribe","color","COLOR","sectionSelectWrap","sectionSelector","SectionSelector","outerWrap","defaultCalendarType","defaultOwnerId","sectionList","sectionGroupList","SectionManager","getSectionGroupList","selectCallback","setValue","saveDefaultSectionId","dateTimeWrap","DateTimeControl","showTimezone","inlineEditMode","remindersControl","setFullDayMode","wasChangedByUser","defaultReminders","getNewEntryReminders","setLocationValue","setDateTime","refreshPlannerStateDebounce","checkLocationAccessibility","currentEventId","userPlannerSelectorOuterWrap","userSelectorWrap","informWrap","plannerOuterWrap","hideGuestsWrap","UserPlannerSelector","readOnlyMode","handlePlannerSelectorChanges","locationWrap","locationOuterWrap","richLocationEnabled","inlineEditModeEnabled","onChangeCallback","planner","reminderValues","remindersWrap","Reminder","values","reminders","REMIND","typeInfoTitle","typeInfoLink","typeInfoWrap","rruleInfo","rruleInfoWrap","getTimezoneInfoControl","timezoneInfo","timezoneInfoWrap","action","isResourcebooking","readOnly","adjustDateForTimezoneOffset","userTimezoneOffsetFrom","userTimezoneOffsetTo","timezoneFrom","getTimezoneFrom","timezoneTo","getTimezoneTo","timezoneName","setInlineEditMode","setViewMode","getName","titleLabel","parentNode","insertBefore","Text","encode","disabled","getColor","getCurrentSectionId","updateValue","isSyncSection","getReminders","style","display","isRecursive","adjust","getRRuleDescription","location","default","attendees","notify","viewMode","hideGuests","getHideGuests","hideInfoContainer","infoContainer","querySelector","i","childNodes","isElementNode","getCurrentEntry","hasExternalEmailUsers","checkEmailLimitationPopup","emailLimitationDialogShown","showEmailLimitationDialog","callback","sendFromEmail","showConfirmedEmailDialog","confirmed","showConfirmEditDialog","recursionMode","isFirstInstance","sendInvitesAgain","find","STATUS","showReInviteUsersDialog","desc","getDescription","reminder","getSelectedValues","date_from","fromDate","date_to","toDate","skip_time","time_from","formatTime","time_to","tz_from","tz_to","meeting_notify","meeting_host","MEETING_HOST","chat_id","MEETING","CHAT_ID","exclude_users","excludeUsers","hide_guests","requestUid","registerRequestId","private_event","isPrivate","checkCurrentUsersAccessibility","previousAttendeesList","newAttendeesList","entity","EVENT_RRULE","RRULE","rec_edit_mode","current_date_from","formatDate","toLowerCase","analyticsLabel","emailGuests","markView","getCurrentView","markCrm","markRrule","markMeeting","markType","unsetHiddenRoom","room_id","showEditEntryNotification","showNewEntryNotification","responseData","countEventWithEmailGuestAmount","setEventWithEmailGuestAmount","eventList","setNewEntryReminders","busyUsersList","handleBusyUsersError","errors","error","code","showError","busyUsers","users","userIds","hasOwnProperty","busyUsersDialog","BusyUsersDialog","e","keyCode","getKeyCode","ctrlKey","metaKey","altKey","selectContol","couldBeClosedByEsc","target","srcElement","tagName","confirmPopup","Entry","dateTimeValue","dateFrom","dateTo","openEditSlider","formDataValue","getSelectedRawValues","meetingNotify","outsideMouseDown","closest","SidePanel","Instance","getTopSlider","outsideMouseUp","PopupManager","_popups","getId","form","errorList","errorText","message","alert","calendar","getView","getEntryById","getUniqueId","handlePull","userIdList","ATTENDEES","eventOwner","CAL_TYPE","OWNER_ID","clearAccessibilityData","PARENT_ID","command","getType","onEntryListReloadHandler","unsubscribe","isGoogle","isIcloud","isOffice365","isCalDav","hasConnection","currentSection","result","currentType","parent_event_id","recursion_mode","section_id","current_event_date_from","DATE_FROM","current_event_date_to","DATE_TO","owner_id","showReleaseLocationNotification","reloadDebounce","MessageBox","getConfirmContent","minHeight","minWidth","maxWidth","Dialogs","MessageBoxButtons","OK_CANCEL","onOk","onCancel","okCaption","popupOptions","padding","contentPadding","animation"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.28 |
proxy
|
phpinfo
|
Settings