File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/modules/calendar/install/js/calendar/eventeditform/dist/eventeditform.bundle.js.map
Back
{"version":3,"file":"eventeditform.bundle.js","sources":["../src/sliderdatetimecontrol.js","../src/eventeditform.js"],"sourcesContent":["\"use strict\";\nimport {Loc, Dom} from 'main.core';\nimport {DateTimeControl, TimeSelector} from 'calendar.controls';\n\nexport class SliderDateTimeControl extends DateTimeControl\n{\n\tcreate()\n\t{\n\t\tthis.DOM.dateTimeWrap = this.DOM.outerContent.querySelector(`#${this.UID}_datetime_container`);\n\t\tthis.DOM.fromDate = this.DOM.outerContent.querySelector(`#${this.UID}_date_from`);\n\t\tthis.DOM.toDate = this.DOM.outerContent.querySelector(`#${this.UID}_date_to`);\n\t\tthis.DOM.fromTime = this.DOM.outerContent.querySelector(`#${this.UID}_time_from`);\n\t\tthis.DOM.toTime = this.DOM.outerContent.querySelector(`#${this.UID}_time_to`);\n\n\t\tthis.fromTimeControl = new TimeSelector({\n\t\t\tinput: this.DOM.fromTime,\n\t\t\tonChangeCallback: this.handleTimeFromChange.bind(this)\n\t\t});\n\n\t\tthis.toTimeControl = new TimeSelector({\n\t\t\tinput: this.DOM.toTime,\n\t\t\tonChangeCallback: this.handleTimeToChange.bind(this)\n\t\t});\n\n\t\tthis.DOM.fullDay = this.DOM.outerContent.querySelector(`#${this.UID}_date_full_day`);\n\t\tthis.DOM.defTimezoneWrap = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_default_wrap`);\n\t\tthis.DOM.defTimezone = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_default`);\n\n\t\tthis.DOM.fromTz = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_from`);\n\t\tthis.DOM.toTz = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_to`);\n\t\tthis.DOM.tzButton = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_btn`);\n\t\tthis.DOM.tzOuterCont = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_wrap`);\n\t\tthis.DOM.tzCont = this.DOM.outerContent.querySelector(`#${this.UID}_timezone_inner_wrap`);\n\n\t\tthis.DOM.outerContent.querySelector(`#${this.UID}_timezone_hint`).title = Loc.getMessage('EC_EVENT_TZ_HINT');\n\t\tthis.DOM.outerContent.querySelector(`#${this.UID}_timezone_default_hint`).title = Loc.getMessage('EC_EVENT_TZ_DEF_HINT');\n\n\t\tthis.prepareModel();\n\t\tthis.bindEventHandlers();\n\n\t\tif (BX.isAmPmMode())\n\t\t{\n\t\t\tthis.DOM.fromTime.style.minWidth = '8em';\n\t\t\tthis.DOM.toTime.style.minWidth = '8em';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.DOM.fromTime.style.minWidth = '6em';\n\t\t\tthis.DOM.toTime.style.minWidth = '6em';\n\t\t}\n\t}\n\n\tprepareModel()\n\t{\n\t\tDom.adjust(this.DOM.fromDate, {props: {autocomplete: 'off'}});\n\t\tDom.adjust(this.DOM.toDate, {props: {autocomplete: 'off'}});\n\t\tDom.adjust(this.DOM.fromTime, {props: {autocomplete: 'off'}});\n\t\tDom.adjust(this.DOM.toTime, {props: {autocomplete: 'off'}});\n\t}\n}","\"use strict\";\nimport {Type, Event, Loc, Dom, Tag, Runtime} from 'main.core';\nimport {SliderDateTimeControl} from './sliderdatetimecontrol.js';\nimport {SectionSelector, Reminder, ColorSelector, Location, RepeatSelector, BusyUsersDialog} from 'calendar.controls';\nimport {Util} from 'calendar.util';\nimport {Entry, EntryManager} from \"calendar.entry\";\nimport {SectionManager} from \"calendar.sectionmanager\";\nimport {EventEmitter, BaseEvent} from 'main.core.events';\nimport {Planner} from \"calendar.planner\";\nimport {TagSelector as EntityTagSelector} from 'ui.entity-selector';\nimport { RoomsManager } from 'calendar.roomsmanager';\n\nexport class EventEditForm\n{\n\tDOM = {};\n\tuid = null;\n\tsliderId = \"calendar:edit-entry-slider\";\n\tzIndex = 3100;\n\tdenyClose = false;\n\tformType = 'slider_main';\n\tSTATE = {READY: 1, REQUEST: 2, ERROR: 3};\n\tsections = [];\n\tsectionIndex = {};\n\ttrackingUsersList = [];\n\tuserSettings = {};\n\tprevUserList = [];\n\tloadedAccessibilityData = {};\n\n\tconstructor(options = {})\n\t{\n\t\tthis.name = options.name || 'eventeditform';\n\t\tthis.type = options.type || 'user';\n\t\tthis.isLocationCalendar = options.isLocationCalendar || false;\n\t\tthis.locationAccess = options.locationAccess || false;\n\t\tthis.locationCapacity = options.locationCapacity || 0;\n\t\tthis.dayOfWeekMonthFormat = options.dayOfWeekMonthFormat || false;\n\t\tthis.roomsManager = options.roomsManager || null;\n\t\tthis.userId = options.userId || parseInt(Loc.getMessage('USER_ID'));\n\t\tthis.ownerId = options.ownerId;\n\t\tthis.entryId = parseInt(options.entryId) || null;\n\t\tthis.entry = options.entry || null;\n\t\tthis.formDataValue = options.formDataValue || {};\n\t\tthis.emitter = new EventEmitter();\n\t\tthis.emitter.setEventNamespace('BX.Calendar.EventEditForm');\n\t\tthis.BX = Util.getBX();\n\t\tthis.context = Util.getCalendarContext() ?? options.calendarContext;\n\t\tif (!Util.getCalendarContext())\n\t\t{\n\t\t\tUtil.setCalendarContext(this.context)\n\t\t}\n\n\t\tthis.formSettings = {\n\t\t\tpinnedFields : {}\n\t\t};\n\t\tif (!this.ownerId && this.type === 'user')\n\t\t{\n\t\t\tthis.ownerId = this.userId;\n\t\t}\n\n\t\tif (Type.isDate(options.entryDateFrom) && !this.formDataValue.from)\n\t\t{\n\t\t\tthis.formDataValue.from = options.entryDateFrom;\n\t\t\tthis.formDataValue.to = new Date(options.entryDateFrom.getTime() + 3600);\n\t\t}\n\n\t\tthis.participantsEntityList = Type.isArray(options.participantsEntityList)\n\t\t\t? options.participantsEntityList\n\t\t\t: [];\n\n\t\tthis.participantsSelectorEntityList = Type.isArray(options.participantsSelectorEntityList)\n\t\t\t? options.participantsSelectorEntityList\n\t\t\t: [];\n\n\t\tif (options.entryName && !this.entryId)\n\t\t{\n\t\t\tthis.formDataValue.name = options.entryName;\n\t\t}\n\t\tif (options.entryDescription && !this.entryId)\n\t\t{\n\t\t\tthis.formDataValue.description = options.entryDescription;\n\t\t}\n\n\t\tthis.refreshPlanner = Runtime.debounce(this.refreshPlannerState, 100, this);\n\t\tthis.state = this.STATE.READY;\n\t\tthis.sliderOnClose = this.hide.bind(this);\n\t\tthis.handlePullBind = this.handlePull.bind(this);\n\t\tthis.keyHandlerBind = this.keyHandler.bind(this);\n\t}\n\n\tinitInSlider(slider, promiseResolve)\n\t{\n\t\tthis.sliderId = slider.getUrl();\n\t\tthis.BX.addCustomEvent(slider, \"SidePanel.Slider:onLoad\", this.onLoadSlider.bind(this));\n\t\tthis.BX.addCustomEvent(slider, \"SidePanel.Slider:onClose\", this.sliderOnClose);\n\t\tthis.BX.addCustomEvent(slider, \"SidePanel.Slider:onBeforeCloseComplete\", this.destroy.bind(this));\n\t\tthis.setCurrentEntry(this.entry || null);\n\n\t\tthis.createContent(slider).then(function(html)\n\t\t\t{\n\t\t\t\tif (Type.isFunction(promiseResolve))\n\t\t\t\t{\n\t\t\t\t\tpromiseResolve(html);\n\t\t\t\t}\n\t\t\t}.bind(this)\n\t\t);\n\n\t\tthis.opened = true;\n\t\tthis.bindEventHandlers();\n\t}\n\n\tshow(params = {})\n\t{\n\t\tthis.setCurrentEntry(params.entry);\n\t\tif (params.formType)\n\t\t{\n\t\t\tthis.formType = params.formType;\n\t\t}\n\n\t\tthis.BX.SidePanel.Instance.open(this.sliderId, {\n\t\t\tcontentCallback: this.createContent.bind(this),\n\t\t\tlabel: {\n\t\t\t\ttext: Loc.getMessage('CALENDAR_EVENT'),\n\t\t\t\tbgColor: \"#55D0E0\"\n\t\t\t},\n\t\t\tevents: {\n\t\t\t\tonClose: this.sliderOnClose,\n\t\t\t\tonCloseComplete: this.destroy.bind(this),\n\t\t\t\tonLoad: this.onLoadSlider.bind(this)\n\t\t\t}\n\t\t});\n\n\t\tthis.opened = true;\n\t\tthis.bindEventHandlers();\n\t}\n\n\tisOpened()\n\t{\n\t\treturn this.opened;\n\t}\n\n\tbindEventHandlers()\n\t{\n\t\tEvent.bind(document, 'keydown', this.keyHandlerBind);\n\t\tEventEmitter.subscribe('onPullEvent-calendar', this.handlePullBind);\n\n\t\t// region 'protection from closing slider by accident'\n\t\tthis.mouseUpNodeCheck = null;\n\n\t\tEvent.bind(document, 'mousedown', (e)=>{this.mousedownTarget = e.target || e.srcElement;});\n\t\tEvent.bind(document, 'mouseup', (e)=>{\n\t\t\tlet target = e.target || e.srcElement;\n\t\t\tif (this.mousedownTarget !== target)\n\t\t\t{\n\t\t\t\tthis.mouseUpNodeCheck = false;\n\t\t\t}\n\t\t\tsetTimeout(()=>{this.mouseUpNodeCheck = null;}, 0);\n\t\t});\n\t\t// endregion\n\n\t\tEventEmitter.subscribe('Calendar.LocationControl.onValueChange', () => {\n\t\t\tif (this.locationBusyAlert)\n\t\t\t{\n\t\t\t\tDom.remove(this.locationBusyAlert);\n\t\t\t\tthis.locationBusyAlert = null;\n\t\t\t}\n\t\t});\n\n\t\tthis.BX.addCustomEvent(window, \"onCalendarControlChildPopupShown\", this.BX.proxy(this.denySliderClose, this));\n\t\tthis.BX.addCustomEvent(window, \"onCalendarControlChildPopupClosed\", this.BX.proxy(this.allowSliderClose, this));\n\t}\n\n\tonLoadSlider(event)\n\t{\n\t\tthis.slider = event.getSlider();\n\t\tthis.DOM.content = this.slider.layout.content;\n\t\tthis.sliderId = this.slider.getUrl();\n\n\t\t// Used to execute javasctipt and attach CSS from ajax responce\n\t\tthis.BX.html(this.slider.layout.content, this.slider.getData().get(\"sliderContent\"));\n\t\tthis.initControls(this.uid);\n\t\tthis.setFormValues();\n\t}\n\n\tclose()\n\t{\n\t\tif (!this.checkDenyClose())\n\t\t{\n\t\t\tthis.state = this.STATE.READY;\n\t\t\tthis.BX.SidePanel.Instance.close();\n\t\t}\n\t}\n\n\tsave(options = {})\n\t{\n\t\tif (this.state === this.STATE.REQUEST)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\toptions = Type.isPlainObject(options) ? options : {};\n\n\t\tif (\n\t\t\t!this.entry.id\n\t\t\t&& this.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: () => {\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 (!this.userSettings.sendFromEmail && this.hasExternalEmailUsers())\n\t\t{\n\t\t\tEntryManager.showConfirmedEmailDialog({\n\t\t\t\tcallback: (params) => {\n\t\t\t\t\tif (params.sendFromEmail)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.userSettings.sendFromEmail = params.sendFromEmail;\n\t\t\t\t\t}\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\tthis.entry.id\n\t\t\t&& this.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\tthis.save({\n\t\t\t\t\t\trecursionMode: (this.entry.isFirstInstance() && params.recursionMode === 'next')\n\t\t\t\t\t\t\t? 'all'\n\t\t\t\t\t\t\t: 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 (\n\t\t\tthis.entry.id\n\t\t\t&& this.entry.isMeeting()\n\t\t\t&& options.sendInvitesAgain === undefined\n\t\t\t&& this.getFormDataChanges().includes('date&time')\n\t\t\t&& this.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\tthis.entry.id\n\t\t\t&& this.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 = this.entry.isFirstInstance() ? 'all' : 'next';\n\t\t}\n\n\t\tDom.addClass(this.DOM.saveBtn, this.BX.UI.Button.State.CLOCKING);\n\t\tDom.addClass(this.DOM.closeBtn, this.BX.UI.Button.State.DISABLED);\n\t\tthis.state = this.STATE.REQUEST;\n\n\t\tthis.DOM.form.id.value = this.entry.id || 0;\n\n\t\t// Location\n\t\tthis.DOM.form.location.value = this.locationSelector.getTextValue();\n\n\t\tif (this.editor)\n\t\t{\n\t\t\tthis.editor.SaveContent();\n\t\t}\n\n\t\tlet section = this.getCurrentSection();\n\t\tif (section)\n\t\t{\n\t\t\t// Color\n\t\t\tif (section.COLOR.toLowerCase() !== this.colorSelector.getValue().toLowerCase())\n\t\t\t{\n\t\t\t\tthis.DOM.form.color.value = this.colorSelector.getValue();\n\t\t\t}\n\t\t\t// this.BX.userOptions.save('calendar', 'user_settings', 'lastUsedSection', parseInt(section.ID));\n\t\t}\n\n\t\tthis.DOM.form.current_date_from.value = options.recursionMode ? Util.formatDate(this.entry.from) : '';\n\t\tthis.DOM.form.rec_edit_mode.value = options.recursionMode || '';\n\n\t\tif (options.sendInvitesAgain !== undefined)\n\t\t{\n\t\t\tthis.DOM.form.appendChild(Tag.render`<input name=\"sendInvitesAgain\" type=\"hidden\" value=\"${options.sendInvitesAgain ? 'Y' : 'N'}\">`);\n\t\t}\n\n\t\tif (!this.DOM.form.requestUid)\n\t\t{\n\t\t\tthis.DOM.requestUid = this.DOM.form.appendChild(\n\t\t\t\tTag.render`<input name=\"requestUid\" type=\"hidden\">`\n\t\t\t);\n\t\t}\n\n\t\tif (!this.DOM.form.meeting_host)\n\t\t{\n\t\t\tthis.DOM.meeting_host = this.DOM.form.appendChild(\n\t\t\t\tTag.render`<input type=\"hidden\" name=\"meeting_host\" value=\"${this.entry.data.MEETING_HOST || '0'}\">`\n\t\t\t);\n\t\t}\n\n\t\tif (!this.DOM.form.chat_id)\n\t\t{\n\t\t\tthis.DOM.chat_id = this.DOM.form.appendChild(\n\t\t\t\tTag.render`<input type=\"hidden\" name=\"chat_id\" value=\"${this.entry.data.MEETING ? this.entry.data.MEETING.CHAT_ID : 0}\">`\n\t\t\t)\n\t\t}\n\n\t\tthis.DOM.requestUid.value = Util.registerRequestId();\n\n\t\t// Save attendees from userSelector\n\t\tconst attendeesEntityList = this.getUserSelectorEntityList();\n\t\tDom.clean(this.DOM.userSelectorValueWarp);\n\t\tattendeesEntityList.forEach((entity, index) => {\n\t\t\tthis.DOM.userSelectorValueWarp.appendChild(Tag.render`\n\t\t\t\t<input type=\"hidden\" name=\"attendeesEntityList[${index}][entityId]\" value=\"${entity.entityId}\">\n\t\t\t`);\n\t\t\tthis.DOM.userSelectorValueWarp.appendChild(Tag.render`\n\t\t\t\t<input type=\"hidden\" name=\"attendeesEntityList[${index}][id]\" value=\"${entity.id}\">\n\t\t\t`);\n\t\t});\n\n\t\tlet checkCurrentUsersAccessibility = !this.entry.id || this.checkCurrentUsersAccessibility();\n\t\tif (!checkCurrentUsersAccessibility\n\t\t\t&& this.getFormDataChanges().includes('codes'))\n\t\t{\n\t\t\tconst previousAttendeesList = this.entry.getAttendeesEntityList();\n\t\t\tattendeesEntityList.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\tthis.DOM.userSelectorValueWarp.appendChild(Tag.render`\n\t\t\t\t\t\t\t<input type=\"hidden\" name=\"newAttendeesList[]\" value=\"${parseInt(entity.id)}\">\n\t\t\t\t\t\t`);\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}\n\n\t\tthis.DOM.userSelectorValueWarp.appendChild(Tag.render`\n\t\t\t<input type=\"hidden\" name=\"checkCurrentUsersAccessibility\" value=\"${checkCurrentUsersAccessibility ? 'Y' : 'N'}\">\n\t\t`);\n\n\t\tthis.BX.ajax.runAction('calendar.api.calendarentryajax.editEntry', {\n\t\t\tdata: new FormData(this.DOM.form),\n\t\t\tanalyticsLabel: {\n\t\t\t\tcalendarAction: this.entry.id ? 'edit_event' : 'create_event',\n\t\t\t\tformType: 'full',\n\t\t\t\temailGuests: this.hasExternalEmailUsers() ? 'Y' : 'N',\n\t\t\t\tmarkView: Util.getCurrentView() || 'outside',\n\t\t\t\tmarkCrm: this.DOM.form['UF_CRM_CAL_EVENT[]'] && this.DOM.form['UF_CRM_CAL_EVENT[]'].value ? 'Y' : 'N',\n\t\t\t\tmarkRrule: this.repeatSelector.getType(),\n\t\t\t\tmarkMeeting: this.entry.isMeeting() ? 'Y' : 'N',\n\t\t\t\tmarkType: this.type\n\t\t\t}\n\t\t}).then((response) => {\n\t\t\t\tif (this.isLocationCalendar)\n\t\t\t\t{\n\t\t\t\t\tthis.roomsManager.unsetHiddenRoom(\n\t\t\t\t\t\tLocation.parseStringValue(this.DOM.form.location.value).room_id\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\t// unset section from hidden\n\t\t\t\tconst section = this.getCurrentSection();\n\t\t\t\tif (section && this.context && this.context.sectionManager)\n\t\t\t\t{\n\t\t\t\t\tthis.unsetHiddenSection(section, this.context.sectionManager);\n\t\t\t\t}\n\n\t\t\t\tthis.state = this.STATE.READY;\n\t\t\t\tthis.allowSliderClose();\n\t\t\t\tthis.close();\n\n\t\t\t\tDom.removeClass(this.DOM.closeBtn, this.BX.UI.Button.State.DISABLED);\n\t\t\t\tDom.removeClass(this.DOM.saveBtn, this.BX.UI.Button.State.CLOCKING);\n\n\t\t\t\tif (response.data.entryId)\n\t\t\t\t{\n\t\t\t\t\tif (this.entry.id)\n\t\t\t\t\t{\n\t\t\t\t\t\tEntryManager.showEditEntryNotification(response.data.entryId);\n\t\t\t\t\t}\n\t\t\t\t\telse\n\t\t\t\t\t{\n\t\t\t\t\t\tEntryManager.showNewEntryNotification(response.data.entryId);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (response.data.countEventWithEmailGuestAmount)\n\t\t\t\t{\n\t\t\t\t\tUtil.setEventWithEmailGuestAmount(response.data.countEventWithEmailGuestAmount);\n\t\t\t\t}\n\n\t\t\t\tif (Type.isArray(response.data.eventList)\n\t\t\t\t\t&& response.data.eventList.length\n\t\t\t\t\t&& response.data.eventList[0].REMIND\n\t\t\t\t\t&& response.data.eventList[0].REMIND.length\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tEntryManager.setNewEntryReminders(\n\t\t\t\t\t\tresponse.data.eventList[0].DT_SKIP_TIME === 'Y' ? 'fullDay' : 'withTime',\n\t\t\t\t\t\tresponse.data.eventList[0].REMIND\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\tthis.emitter.emit('onSave', new BaseEvent({\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tresponseData: response.data,\n\t\t\t\t\t\toptions: options\n\t\t\t\t\t}\n\t\t\t\t}));\n\n\t\t\t\tEventEmitter.emit('BX.Calendar:onEntrySave', new BaseEvent({\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tsliderId: this.sliderId,\n\t\t\t\t\t\tresponseData: response.data,\n\t\t\t\t\t\toptions: options\n\t\t\t\t\t}\n\t\t\t\t}));\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\tDom.removeClass(this.DOM.saveBtn, this.BX.UI.Button.State.CLOCKING);\n\t\t\t\tDom.removeClass(this.DOM.closeBtn, this.BX.UI.Button.State.DISABLED);\n\n\t\t\t\tif (response.data && Type.isPlainObject(response.data.busyUsersList))\n\t\t\t\t{\n\t\t\t\t\tthis.handleBusyUsersError(response.data.busyUsersList);\n\n\t\t\t\t\tlet errors = [];\n\t\t\t\t\tresponse.errors.forEach((error) => {\n\t\t\t\t\t\tif (error.code !== \"edit_entry_user_busy\")\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\terrors.push(error);\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\tresponse.errors = errors;\n\t\t\t\t}\n\n\t\t\t\tif (response.errors && response.errors.length)\n\t\t\t\t{\n\t\t\t\t\tthis.showError(response.errors);\n\t\t\t\t}\n\n\t\t\t\tthis.state = this.STATE.ERROR;\n\t\t\t}\n\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.DOM.form.exclude_users.value = userIds.join(',');\n\t\t\tthis.save();\n\t\t});\n\n\t\tthis.busyUsersDialog.show({users: users});\n\t}\n\n\tclientSideCheck()\n\t{\n\n\t}\n\n\thide(event)\n\t{\n\t\tif (event && event.getSlider && event.getSlider().getUrl() === this.sliderId)\n\t\t{\n\t\t\tif (this.checkDenyClose())\n\t\t\t{\n\t\t\t\tevent.denyAction();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.BX.removeCustomEvent(\"SidePanel.Slider::onClose\", this.sliderOnClose);\n\t\t\t\tif (this.attendeesSelector)\n\t\t\t\t{\n\t\t\t\t \tthis.attendeesSelector.closeAll();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tdestroy(event)\n\t{\n\t\tif (event && event.getSliderPage && event.getSliderPage().getUrl() === this.sliderId)\n\t\t{\n\t\t\tthis.BX.onCustomEvent('OnCalendarPlannerDoUninstall', [{plannerId: this.plannerId}]);\n\t\t\tEvent.unbind(document, 'keydown', this.keyHandlerBind);\n\t\t\tEventEmitter.unsubscribe('onPullEvent-calendar', this.handlePullBind);\n\t\t\tthis.BX.SidePanel.Instance.destroy(this.sliderId);\n\t\t\tif (Location)\n\t\t\t{\n\t\t\t\tLocation.setCurrentCapacity(0);\n\t\t\t}\n\t\t\tUtil.closeAllPopups();\n\t\t\tthis.planner = null;\n\t\t\tthis.opened = false;\n\t\t\tUtil.clearPlannerWatches();\n\t\t}\n\t}\n\n\tcreateContent(slider)\n\t{\n\t\tlet promise = new this.BX.Promise();\n\n\t\tlet entry = this.getCurrentEntry();\n\n\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.getEditEventSlider', {\n\t\t\tdata: {\n\t\t\t\tevent_id: this.entryId || entry.id,\n\t\t\t\tdate_from: entry ? Util.formatDate(entry.from) : '',\n\t\t\t\tform_type: this.formType,\n\t\t\t\ttype: entry.data['CAL_TYPE'] ?? this.type,\n\t\t\t\townerId: entry.data['OWNER_ID'] ?? this.ownerId,\n\t\t\t\tentityList: this.participantsEntityList,\n\t\t\t}\n\t\t})\n\t\t\t.then(\n\t\t\t\t(response) => {\n\t\t\t\t\tif ((Type.isFunction(slider.isOpen) && slider.isOpen()) || slider.isOpen === true)\n\t\t\t\t\t{\n\t\t\t\t\t\tlet html = this.BX.util.trim(response.data.html);\n\t\t\t\t\t\tslider.getData().set(\"sliderContent\", html);\n\n\t\t\t\t\t\tlet params = response.data.additionalParams;\n\n\t\t\t\t\t\tthis.updateEntryData(params.entry, {\n\t\t\t\t\t\t\tuserSettings: this.userSettings,\n\t\t\t\t\t\t\tmeetSection: params.meetSection,\n\t\t\t\t\t\t});\n\t\t\t\t\t\tentry = this.getCurrentEntry();\n\n\t\t\t\t\t\tthis.uid = params.uniqueId;\n\t\t\t\t\t\tthis.editorId = params.editorId;\n\t\t\t\t\t\tthis.formSettings = this.getSettings(params.formSettings || []);\n\n\t\t\t\t\t\tlet attendeesEntityList = this.formDataValue.attendeesEntityList\n\t\t\t\t\t\t\t|| params.attendeesEntityList\n\t\t\t\t\t\t\t|| [];\n\n\t\t\t\t\t\tif (!entry.id && this.participantsEntityList.length)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tattendeesEntityList = this.participantsEntityList;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (Type.isArray(attendeesEntityList))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tattendeesEntityList.forEach((item) => {\n\t\t\t\t\t\t\t\tif (item.entityId === 'user' && params.userIndex[item.id])\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\titem.entityType = params.userIndex[item.id].EMAIL_USER ? 'email' : 'employee';\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tthis.setUserSelectorEntityList(attendeesEntityList);\n\n\t\t\t\t\t\tthis.attendeesPreselectedItems = this.getUserSelectorEntityList().map((item) => {return [item.entityId, item.id]});\n\t\t\t\t\t\tthis.setUserSettings(params.userSettings);\n\t\t\t\t\t\tUtil.setEventWithEmailGuestAmount(params.countEventWithEmailGuestAmount);\n\t\t\t\t\t\tUtil.setEventWithEmailGuestLimit(params.eventWithEmailGuestLimit);\n\t\t\t\t\t\tthis.handleSections(params.sections, params.trackingUsersList);\n\t\t\t\t\t\tthis.handleLocationData(params.locationFeatureEnabled, params.locationList, params.iblockMeetingRoomList);\n\t\t\t\t\t\tthis.locationAccess = params.locationAccess;\n\t\t\t\t\t\tthis.dayOfWeekMonthFormat = params.dayOfWeekMonthFormat;\n\t\t\t\t\t\tthis.plannerFeatureEnabled = !!params.plannerFeatureEnabled;\n\t\t\t\t\t\tif (this.planner && !this.plannerFeatureEnabled)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.planner.lock();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!entry.id && !entry.sectionId)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.setCurrentEntry();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (this.userSettings.meetSection && this.type ==='user')\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tSectionManager.setNewEntrySectionId(this.userSettings.meetSection);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tpromise.fulfill(html);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\t(response) => {\n\t\t\t\t\t//this.calendar.displayError(response.errors);\n\t\t\t\t}\n\t\t\t);\n\t\treturn promise;\n\t}\n\n\n\tinitControls(uid)\n\t{\n\t\tthis.DOM.title = this.DOM.content.querySelector(`#${uid}_title`);\n\t\tthis.DOM.formWrap = this.DOM.content.querySelector(`#${uid}_form_wrap`);\n\t\tthis.DOM.form = this.DOM.content.querySelector(`#${uid}_form`);\n\t\tthis.DOM.buttonsWrap = this.DOM.content.querySelector('.calendar-form-buttons-fixed');\n\t\tthis.DOM.saveBtn = this.DOM.buttonsWrap.querySelector(`#${uid}_save`);\n\t\tthis.DOM.closeBtn = this.DOM.buttonsWrap.querySelector(`#${uid}_close`);\n\t\tEvent.bind(this.DOM.saveBtn, 'click', this.save.bind(this));\n\t\tEvent.bind(this.DOM.closeBtn, 'click', this.close.bind(this));\n\n\t\tthis.initFormFieldManager(uid);\n\t\tthis.initDateTimeControl(uid);\n\t\tthis.initNameControl(uid);\n\t\tthis.initEditorControl(uid);\n\t\tthis.initAttendeesControl();\n\t\tthis.initPlanner(uid);\n\t\tthis.initReminderControl(uid);\n\t\tthis.initSectionSelector(uid);\n\t\tthis.initLocationControl(uid);\n\t\tthis.initRepeatRuleControl(uid);\n\t\tthis.initColorControl(uid);\n\t\tthis.initCrmUfControl(uid);\n\t\tthis.initAdditionalControls(uid);\n\n\t\tthis.checkLastItemBorder();\n\n\t\tif (this.DOM.buttonsWrap)\n\t\t{\n\t\t\tBX.ZIndexManager.register(this.DOM.buttonsWrap);\n\t\t}\n\t}\n\n\tupdateEntryData(entryData, options = {})\n\t{\n\t\tif (this.entry instanceof Entry)\n\t\t{\n\t\t\tlet userSettings = options.userSettings || {};\n\n\t\t\tif (Type.isPlainObject(entryData))\n\t\t\t{\n\t\t\t\tthis.entry.prepareData(entryData);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tif (!this.entry.getTimezoneFrom() || this.entry.getTimezoneTo())\n\t\t\t\t{\n\t\t\t\t\tthis.entry.setTimezone(userSettings.timezoneName || userSettings.timezoneDefaultName || null);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t!this.entry.id\n\t\t\t\t&& options.meetSection\n\t\t\t\t&& this.type === Entry.CAL_TYPES['user']\n\t\t\t)\n\t\t\t{\n\t\t\t\tthis.entry.setSectionId(options.meetSection)\n\t\t\t}\n\t\t}\n\t}\n\n\thandleSections(sections, trackingUsersList)\n\t{\n\t\tthis.sections = sections;\n\t\tthis.sectionIndex = {};\n\t\tthis.trackingUsersList = trackingUsersList || [];\n\n\t\tif (Type.isArray(sections))\n\t\t{\n\t\t\tsections.forEach((value, ind) => {this.sectionIndex[parseInt(value.ID)] = ind;}, 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\thandleLocationData(locationFeatureEnabled, locationList, iblockMeetingRoomList)\n\t{\n\t\tthis.locationFeatureEnabled = !!locationFeatureEnabled;\n\t\tthis.locationList = Type.isArray(locationList)\n\t\t\t? locationList.filter(locationItem => {return locationItem.PERM.view_full})\n\t\t\t: [];\n\t\tthis.iblockMeetingRoomList = iblockMeetingRoomList || [];\n\n\t\tLocation.setLocationList(locationList);\n\t\tLocation.setMeetingRoomList(iblockMeetingRoomList);\n\t}\n\n\tsetUserSettings(userSettings)\n\t{\n\t\tthis.userSettings = userSettings;\n\t\tUtil.setUserSettings(userSettings);\n\t}\n\n\tsetFormValues()\n\t{\n\t\tlet entry = this.entry;\n\n\t\t// Date time\n\t\tthis.dateTimeControl.setValue({\n\t\t\tfrom: this.formDataValue.from || entry.from,\n\t\t\tto: this.formDataValue.to || entry.to,\n\t\t\tfullDay: Type.isBoolean(this.formDataValue.fullDay) ? this.formDataValue.fullDay : 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\n\t\tthis.DOM.entryName.value = this.formDataValue.name || entry.getName();\n\n\t\t// Section\n\t\tconst section = this.getCurrentSection();\n\t\tif (this.formDataValue.section)\n\t\t{\n\t\t\tentry.sectionId = parseInt(this.formDataValue.section);\n\t\t}\n\t\tthis.DOM.sectionInput.value = this.getCurrentSectionId();\n\t\tthis.sectionSelector.updateValue();\n\n\t\tif (!this.fieldIsPinned('section'))\n\t\t{\n\t\t\tif (\n\t\t\t\tsection['CAL_TYPE'] !== this.type\n\t\t\t\t|| section['CAL_TYPE'] === this.type\n\t\t\t\t&& parseInt(section['OWNER_ID']) !== this.ownerId\n\t\t\t)\n\t\t\t{\n\t\t\t\tthis.pinField('section');\n\t\t\t}\n\t\t}\n\n\t\tif (this.isSyncSection(section) && entry.id)\n\t\t{\n\t\t\tthis.sectionSelector.setViewMode(true);\n\t\t}\n\n\t\t// Color\n\t\tthis.colorSelector.setValue(this.formDataValue.color || entry.getColor() || section.COLOR);\n\n\t\t// Reminders\n\t\tthis.remindersControl.setValue(\n\t\t\tthis.formDataValue.reminder || entry.getReminders(),\n\t\t\ttrue,\n\t\t\tfalse\n\t\t);\n\n\t\t// Recursion\n\t\tthis.repeatSelector.setValue(this.formDataValue.rrule || entry.getRrule());\n\n\t\t// accessibility\n\t\tif (this.DOM.accessibilityInput)\n\t\t{\n\t\t\tthis.DOM.accessibilityInput.value = entry.accessibility;\n\t\t}\n\n\t\t// Location\n\t\tif (this.locationSelector)\n\t\t{\n\t\t\tthis.locationSelector.setValue(this.formDataValue.location\n\t\t\t\t|| this.locationSelector.default || entry.getLocation(), false);\n\n\t\t\tthis.locationSelector.checkLocationAccessibility({\n\t\t\t\tfrom: this.formDataValue.from || entry.from,\n\t\t\t\tto: this.formDataValue.to || entry.to,\n\t\t\t\tfullDay: Type.isBoolean(this.formDataValue.fullDay)\n\t\t\t\t\t? this.formDataValue.fullDay\n\t\t\t\t\t: entry.fullDay,\n\t\t\t\tcurrentEventId: this.entry.id,\n\t\t\t})\n\t\t}\n\t\t// Private\n\t\tif (this.DOM.privateEventCheckbox)\n\t\t{\n\t\t\tthis.DOM.privateEventCheckbox.checked = entry.private;\n\t\t}\n\n\t\t// Importance\n\t\tif (this.DOM.importantEventCheckbox)\n\t\t{\n\t\t\tthis.DOM.importantEventCheckbox.checked = entry.important;\n\t\t}\n\n\t\tif (this.DOM.form.meeting_notify)\n\t\t{\n\t\t\tif (this.formDataValue.meetingNotify !== undefined)\n\t\t\t{\n\t\t\t\tthis.DOM.form.meeting_notify.checked = this.formDataValue.meetingNotify;\n\t\t\t}\n\t\t\tif (this.entry.data && this.entry.data.MEETING)\n\t\t\t{\n\t\t\t\tthis.DOM.form.meeting_notify.checked = this.entry.data.MEETING.NOTIFY;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.DOM.form.meeting_notify.checked = true; // default value\n\t\t\t}\n\t\t}\n\n\t\tif (this.DOM.form.hide_guests)\n\t\t{\n\t\t\tif (this.formDataValue.hideGuests !== undefined)\n\t\t\t{\n\t\t\t\tthis.DOM.form.hide_guests.checked = this.formDataValue.hideGuests === 'Y';\n\t\t\t}\n\t\t\telse if (this.entry.data && this.entry.data.MEETING)\n\t\t\t{\n\t\t\t\tthis.DOM.form.hide_guests.checked = this.entry.data.MEETING.HIDE_GUESTS;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.DOM.form.hide_guests.checked = true; // default value\n\t\t\t}\n\t\t}\n\n\t\tif (this.DOM.form.allow_invite)\n\t\t{\n\t\t\tif (this.entry.data)\n\t\t\t{\n\t\t\t\tthis.DOM.form.allow_invite.checked = this.entry.data.MEETING && this.entry.data.MEETING.ALLOW_INVITE;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.DOM.form.allow_invite.checked = this.entry.allowInvite;\n\t\t\t}\n\t\t}\n\n\t\tlet dateTime = this.dateTimeControl.getValue();\n\t\tthis.planner.updateSelector(\n\t\t\tdateTime.from,\n\t\t\tdateTime.to,\n\t\t\tdateTime.fullDay,\n\t\t\t{\n\t\t\t\tfocus: true\n\t\t\t}\n\t\t);\n\n\t\tthis.loadPlannerData({\n\t\t\tentityList: this.getUserSelectorEntityList(),\n\t\t\tfrom: Util.formatDate(entry.from.getTime() - Util.getDayLength() * 3),\n\t\t\tto: Util.formatDate(entry.to.getTime() + Util.getDayLength() * 10),\n\t\t\ttimezone: entry.getTimezoneFrom(),\n\t\t\tlocation: this.locationSelector.getTextValue()\n\t\t}).then(()=>{\n\t\t\tif (this.hasExternalEmailUsers())\n\t\t\t{\n\t\t\t\tthis.showHideGuestsOption();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.hideHideGuestsOption();\n\t\t\t}\n\t\t});\n\t}\n\n\tswitchFullDay(value)\n\t{\n\t\tvalue = !!this.DOM.fullDay.checked;\n\t\tif (value && Type.isString(this.userSettings.timezoneName)\n\t\t\t&& (!this.DOM.fromTz.value || !this.DOM.toTz.value))\n\t\t{\n\t\t\tthis.DOM.fromTz.value = this.userSettings.timezoneName;\n\t\t\tthis.DOM.toTz.value = this.userSettings.timezoneName;\n\t\t\tthis.DOM.defTimezone.value = this.userSettings.timezoneName;\n\t\t}\n\n\t\tif (value)\n\t\t{\n\t\t\tDom.addClass(this.DOM.dateTimeWrap, 'calendar-options-item-datetime-hide-time');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.removeClass(this.DOM.dateTimeWrap, 'calendar-options-item-datetime-hide-time');\n\t\t}\n\n\t\tif (this.remindersControl)\n\t\t{\n\t\t\tthis.remindersControl.setFullDayMode(value);\n\t\t}\n\n\t\tthis.refreshPlanner();\n\t}\n\n\tswitchTimezone()\n\t{\n\t\tif (Dom.hasClass(this.DOM.tzCont, 'calendar-options-timezone-collapse'))\n\t\t{\n\t\t\tDom.addClass(this.DOM.tzCont, 'calendar-options-timezone-expand');\n\t\t\tDom.removeClass(this.DOM.tzCont, 'calendar-options-timezone-collapse');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tDom.addClass(this.DOM.tzCont, 'calendar-options-timezone-collapse');\n\t\t\tDom.removeClass(this.DOM.tzCont, 'calendar-options-timezone-expand');\n\t\t}\n\t}\n\n\tinitFormFieldManager(uid)\n\t{\n\t\tthis.DOM.mainBlock = this.DOM.content.querySelector(`#${uid}_main_block_wrap`);\n\t\tthis.DOM.additionalBlockWrap = this.DOM.content.querySelector(`#${uid}_additional_block_wrap`);\n\t\tthis.DOM.additionalBlock = this.DOM.content.querySelector(`#${uid}_additional_block`);\n\t\tthis.DOM.pinnedNamesWrap = this.DOM.content.querySelector(`#${uid}_additional_pinned_names`);\n\t\tthis.DOM.additionalSwitch = this.DOM.content.querySelector(`#${uid}_additional_switch`);\n\n\n\t\tif (this.isLocationCalendar && !this.fieldIsPinned('location'))\n\t\t{\n\t\t\tthis.pinField('location');\n\t\t}\n\n\t\tEvent.bind(this.DOM.additionalSwitch, 'click', () => {\n\t\t\tDom.toggleClass(this.DOM.additionalSwitch, 'opened');\n\t\t\tDom.toggleClass(this.DOM.additionalBlock, 'invisible');\n\t\t});\n\n\t\tEvent.bind(this.DOM.formWrap, 'click', (e) => {\n\t\t\tlet target = e.target || e.srcElement;\n\t\t\tif (target && target.getAttribute && target.getAttribute('data-bx-fixfield'))\n\t\t\t{\n\t\t\t\tlet fieldName = target.getAttribute('data-bx-fixfield');\n\t\t\t\tif (!this.fieldIsPinned(fieldName))\n\t\t\t\t{\n\t\t\t\t\tthis.pinField(fieldName);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.unPinField(fieldName);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tinitDateTimeControl(uid)\n\t{\n\t\tthis.dateTimeControl = new SliderDateTimeControl(uid, {\n\t\t\tshowTimezone: true,\n\t\t\touterContent: this.DOM.content\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.entry.id && !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(\n\t\t\t\t\t\t\tdefaultReminders,\n\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\tfalse\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (this.planner)\n\t\t\t\t{\n\t\t\t\t\tthis.planner.updateSelector(value.from, value.to, value.fullDay);\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: value.from,\n\t\t\t\t\t\t\tto: value.to,\n\t\t\t\t\t\t\tfullDay: value.fullDay,\n\t\t\t\t\t\t\tcurrentEventId: this.entry.id,\n\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\t}\n\n\tinitNameControl(uid)\n\t{\n\t\tthis.DOM.entryName = this.DOM.content.querySelector(`#${uid}_entry_name`);\n\t\tsetTimeout(() => {\n\t\t\tthis.DOM.entryName.focus();\n\t\t\tthis.DOM.entryName.select();\n\t\t}, 500);\n\t}\n\n\tinitReminderControl(uid)\n\t{\n\t\tthis.reminderValues = [];\n\t\tthis.DOM.reminderWrap = this.DOM.content.querySelector(`#${uid}_reminder`);\n\t\tthis.DOM.reminderInputsWrap = this.DOM.reminderWrap.appendChild(Tag.render`<span></span>`);\n\n\t\tthis.remindersControl = new Reminder({\n\t\t\twrap: this.DOM.reminderWrap,\n\t\t\tzIndex: this.zIndex,\n\t\t});\n\n\t\tthis.remindersControl.subscribe('onChange', (event) =>\n\t\t{\n\t\t\tif (event instanceof BaseEvent)\n\t\t\t{\n\t\t\t\tthis.reminderValues = event.getData().values;\n\t\t\t\tDom.clean(this.DOM.reminderInputsWrap);\n\t\t\t\tthis.reminderValues.forEach((value) => {\n\t\t\t\t\tthis.DOM.reminderInputsWrap.appendChild(Dom.create('INPUT', {\n\t\t\t\t\t\tprops: {name: 'reminder[]', type: 'hidden'},\n\t\t\t\t\t\tattrs: {value: value}}));\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t}\n\n\tinitSectionSelector(uid)\n\t{\n\t\tthis.DOM.sectionInput = this.DOM.content.querySelector(`#${uid}_section`);\n\t\tthis.sectionSelector = new SectionSelector({\n\t\t\touterWrap: this.DOM.content.querySelector(`#${uid}_section_wrap`),\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 || 'user',\n\t\t\t\townerId: this.ownerId || this.userId,\n\t\t\t\tuserId: this.userId,\n\t\t\t\ttrackingUsersList: this.trackingUsersList,\n\t\t\t}),\n\t\t\tmode: 'full',\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\tthis.DOM.sectionInput.value = sectionValue.id;\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.entry.setSectionId(sectionValue.id);\n\n\t\t\t\t\tSectionManager.saveDefaultSectionId(\n\t\t\t\t\t\tsectionValue.id,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcalendarType: this.type,\n\t\t\t\t\t\t\townerId: this.ownerId,\n\t\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\t\tsections: this.sections\n\t\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\n\tinitEditorControl(uid)\n\t{\n\t\tif (!window[\"BXHtmlEditor\"])\n\t\t{\n\t\t\treturn setTimeout(BX.delegate(this.initEditorControl, this), 50);\n\t\t}\n\n\t\tthis.editor = null;\n\t\tif (window[\"BXHtmlEditor\"])\n\t\t{\n\t\t\tthis.editor = window[\"BXHtmlEditor\"].Get(this.editorId);\n\t\t}\n\n\t\tif (\n\t\t\t!this.editor\n\t\t\t&& top[\"BXHtmlEditor\"]\n\t\t\t&& top[\"BXHtmlEditor\"] !== window[\"BXHtmlEditor\"]\n\t\t)\n\t\t{\n\t\t\tthis.editor = top[\"BXHtmlEditor\"].Get(this.editorId);\n\t\t}\n\n\t\tif (this.editor && this.editor.IsShown())\n\t\t{\n\t\t\tthis.customizeHtmlEditor();\n\n\t\t\tif (this.formDataValue.description)\n\t\t\t{\n\t\t\t\tthis.editor.SetContent(this.formDataValue.description);\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.BX.addCustomEvent(window[\"BXHtmlEditor\"], 'OnEditorCreated', function (editor)\n\t\t\t{\n\t\t\t\tif (editor.id === this.editorId)\n\t\t\t\t{\n\t\t\t\t\tthis.editor = editor;\n\t\t\t\t\tthis.customizeHtmlEditor();\n\n\t\t\t\t\tif (this.formDataValue.description)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.editor.SetContent(this.formDataValue.description);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}.bind(this));\n\t\t}\n\t}\n\n\tcustomizeHtmlEditor()\n\t{\n\t\tlet editor = this.editor;\n\t\tif (editor.toolbar && editor.toolbar.controls && editor.toolbar.controls.spoiler)\n\t\t{\n\t\t\tDom.remove(editor.toolbar.controls.spoiler.pCont);\n\t\t}\n\t}\n\n\tinitLocationControl(uid)\n\t{\n\t\tthis.DOM.locationWrap = this.DOM.content.querySelector(`#${uid}_location_wrap`);\n\t\tthis.DOM.locationInput = this.DOM.content.querySelector(`#${uid}_location`);\n\n\t\tthis.locationSelector = new Location(\n\t\t\t{\n\t\t\t\tinputName: 'lo_cation', // don't use 'location' word here mantis:107863\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\tonChangeCallback: this.refreshPlanner\n\t\t\t}\n\t\t);\n\t}\n\n\tinitRepeatRuleControl(uid)\n\t{\n\t\tthis.DOM.rruleWrap = this.DOM.content.querySelector(`#${uid}_rrule_wrap`);\n\t\tthis.repeatSelector = new RepeatSelector(\n\t\t\t{\n\t\t\t\twrap: this.DOM.rruleWrap,\n\t\t\t\trruleType: this.DOM.content.querySelector(`#${uid}_rrule_type`),\n\t\t\t\tgetDate: function() {return this.dateTimeControl.getValue().from;}.bind(this)\n\t\t\t}\n\t\t);\n\n\t\tthis.dateTimeControl.subscribe('onChange', ()=>{\n\t\t\tif (this.repeatSelector.getType() === 'weekly')\n\t\t\t{\n\t\t\t\tthis.repeatSelector.changeType(this.repeatSelector.getType());\n\t\t\t}\n\t\t});\n\n\t\tthis.planner.subscribe('onDateChange', () => {\n\t\t\tif (this.repeatSelector.getType() === 'weekly')\n\t\t\t{\n\t\t\t\tthis.repeatSelector.changeType(this.repeatSelector.getType());\n\t\t\t}\n\t\t});\n\n\t}\n\n\tinitAttendeesControl()\n\t{\n\t\tthis.DOM.userSelectorWrap = this.DOM.content.querySelector('.calendar-attendees-selector-wrap');\n\t\tthis.DOM.userSelectorValueWarp = this.DOM.userSelectorWrap.appendChild(Tag.render`<div></div>`);\n\n\t\tthis.userTagSelector = new EntityTagSelector({\n\t\t\tdialogOptions: {\n\t\t\t\tcontext: 'CALENDAR',\n\t\t\t\tpreselectedItems: this.attendeesPreselectedItems || [],\n\t\t\t\tzIndex: this.slider.zIndex,\n\t\t\t\tevents: {\n\t\t\t\t\t'Item:onSelect': this.handleUserSelectorChanges.bind(this),\n\t\t\t\t\t'Item:onDeselect': this.handleUserSelectorChanges.bind(this),\n\t\t\t\t},\n\t\t\t\tentities: this.getParticipantsSelectorEntityList(),\n\t\t\t\tsearchTabOptions: {\n\t\t\t\t\tstubOptions: {\n\t\t\t\t\t\ttitle: Loc.getMessage('EC_USER_DIALOG_404_TITLE'),\n\t\t\t\t\t\tsubtitle: Loc.getMessage('EC_USER_DIALOG_404_SUBTITLE'),\n\t\t\t\t\t\ticon: '/bitrix/images/calendar/search-email.svg',\n\t\t\t\t\t\ticonOpacity: 100,\n\t\t\t\t\t\tarrow: true,\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t}\n\t\t});\n\n\t\tthis.userTagSelector.renderTo(this.DOM.userSelectorWrap);\n\t\tthis.DOM.hideGuestsWrap = this.DOM.content.querySelector('.calendar-hide-members-wrap');\n\t}\n\n\thandleUserSelectorChanges()\n\t{\n\t\tif (this.planner)\n\t\t{\n\t\t\tthis.planner.show();\n\t\t\tthis.planner.showLoader();\n\n\t\t\tconst selectedItems = this.userTagSelector.getDialog().getSelectedItems();\n\t\t\tthis.setUserSelectorEntityList(selectedItems.map((item) => {\n\t\t\t\treturn {\n\t\t\t\t\tentityId: item.entityId,\n\t\t\t\t\tid: item.id,\n\t\t\t\t\tentityType: item.entityType\n\t\t\t\t}}));\n\t\t\tthis.refreshPlanner();\n\t\t}\n\t}\n\n\thasExternalEmailUsers()\n\t{\n\t\treturn !!this.getUserSelectorEntityList().find((item) => {return item.entityType === 'email';});\n\t}\n\n\tshowHideGuestsOption()\n\t{\n\t\tthis.DOM.hideGuestsWrap.style.display = '';\n\t\tUtil.initHintNode(this.DOM.hideGuestsWrap.querySelector('.calendar-hide-members-helper'));\n\t}\n\n\thideHideGuestsOption()\n\t{\n\t\tthis.DOM.hideGuestsWrap.style.display = 'none';\n\t}\n\n\tsetHideGuestsValue(hideGuests = true)\n\t{\n\t\tthis.hideGuests = hideGuests;\n\t}\n\n\tinitPlanner(uid)\n\t{\n\t\tthis.DOM.plannerOuterWrap = this.DOM.content.querySelector(`#${uid}_planner_outer_wrap`);\n\n\t\tthis.planner = new Planner({\n\t\t\twrap: this.DOM.plannerOuterWrap,\n\t\t\tminWidth: parseInt(this.DOM.plannerOuterWrap.offsetWidth),\n\t\t\tdayOfWeekMonthFormat: this.dayOfWeekMonthFormat,\n\t\t\tlocked: !this.plannerFeatureEnabled\n\t\t});\n\n\t\tthis.planner.subscribe('onDateChange', this.handlePlannerSelectorChanges.bind(this));\n\t\tthis.planner.subscribe('onExpandTimeline', this.handleExpandPlannerTimeline.bind(this));\n\t\tthis.planner.subscribe('onDisplayAttendees', this.checkLocationForm.bind(this));\n\n\t\tthis.planner.show();\n\t\tthis.planner.showLoader();\n\t}\n\n\tloadPlannerData(params = {})\n\t{\n\t\tthis.planner.showLoader();\n\t\treturn new Promise((resolve) => {\n\t\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.updatePlanner', {\n\t\t\t\tdata: {\n\t\t\t\t\tentryId: this.entry.id || 0,\n\t\t\t\t\tentryLocation: this.entry.data.LOCATION || '',\n\t\t\t\t\townerId: this.ownerId,\n\t\t\t\t\ttype: this.type,\n\t\t\t\t\tentityList: params.entityList || [],\n\t\t\t\t\tdateFrom: Util.formatDate(this.planner.scaleDateFrom),\n\t\t\t\t\tdateTo: Util.formatDate(this.planner.scaleDateTo),\n\t\t\t\t\ttimezone: params.timezone || '',\n\t\t\t\t\tlocation: params.location || '',\n\t\t\t\t\tprevUserList: this.prevUserList\n\t\t\t\t}\n\t\t\t})\n\t\t\t\t.then((response) => {\n\t\t\t\t\t\tif (this.planner)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfor (let id in response.data.accessibility)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif (response.data.accessibility.hasOwnProperty(id))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tthis.loadedAccessibilityData[id] = response.data.accessibility[id];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (Type.isArray(response.data.entries))\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tresponse.data.entries.forEach((entry) => {\n\t\t\t\t\t\t\t\t\tif (entry.type === 'user' && !this.prevUserList.includes(parseInt(entry.id)))\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tthis.prevUserList.push(parseInt(entry.id));\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\t}\n\n\t\t\t\t\t\t\tthis.planner.hideLoader();\n\t\t\t\t\t\t\tthis.planner.update(\n\t\t\t\t\t\t\t\tresponse.data.entries,\n\t\t\t\t\t\t\t\tthis.loadedAccessibilityData\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (this.hasExternalEmailUsers())\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.showHideGuestsOption();\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.hideHideGuestsOption();\n\t\t\t\t\t\t}\n\t\t\t\t\t\tresolve(response);\n\t\t\t\t\t},\n\t\t\t\t\t(response) => {resolve(response);}\n\t\t\t\t);\n\t\t});\n\t}\n\n\n\tinitAdditionalControls(uid)\n\t{\n\t\tthis.DOM.accessibilityInput = this.DOM.content.querySelector(`#${uid}_accessibility`);\n\t\tthis.DOM.privateEventCheckbox = this.DOM.content.querySelector(`#${uid}_private`);\n\t\tthis.DOM.importantEventCheckbox = this.DOM.content.querySelector(`#${uid}_important`);\n\t}\n\n\tinitColorControl(uid)\n\t{\n\t\tthis.DOM.colorWrap = this.DOM.content.querySelector(`#${uid}_color_selector_wrap`);\n\t\tthis.colorSelector = new ColorSelector(\n\t\t\t{\n\t\t\t\twrap: this.DOM.colorWrap\n\t\t\t}\n\t\t);\n\t}\n\n\tinitCrmUfControl(uid)\n\t{\n\t\tthis.DOM.crmUfWrap = BX(uid + '-uf-crm-wrap');\n\n\t\tif (this.DOM.crmUfWrap)\n\t\t{\n\t\t\tlet entry = this.getCurrentEntry();\n\t\t\tlet loader = this.DOM.crmUfWrap.appendChild(Dom.adjust(Util.getLoader(50), {style: {height: '40px', width: '40px'}}));\n\n\t\t\tsetTimeout(function(){\n\t\t\t\tthis.BX.ajax.runAction('calendar.api.calendarajax.getCrmUserfield', {\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tevent_id: (entry && entry.id) ? entry.id : 0\n\t\t\t\t\t}\n\t\t\t\t}).then(\n\t\t\t\t\t// Success\n\t\t\t\t\tfunction(response)\n\t\t\t\t\t{\n\t\t\t\t\t\tif (Type.isDomNode(this.DOM.crmUfWrap))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.BX.html(this.DOM.crmUfWrap, response.data.html);\n\t\t\t\t\t\t}\n\t\t\t\t\t}.bind(this),\n\t\t\t\t\t// Failure\n\t\t\t\t\tfunction (response)\n\t\t\t\t\t{\n\t\t\t\t\t\tDom.remove(loader);\n\t\t\t\t\t}.bind(this)\n\t\t\t\t);\n\t\t\t}.bind(this), 800);\n\t\t}\n\t}\n\n\tdenySliderClose()\n\t{\n\t\tthis.denyClose = true;\n\t}\n\n\tallowSliderClose()\n\t{\n\t\tthis.denyClose = false;\n\t}\n\n\tcheckDenyClose()\n\t{\n\t\t// pending request\n\t\tif (this.state === this.STATE.REQUEST)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\t// Check if closing of slider was caused during selection.\n\t\tif (!Type.isNull(this.mouseUpNodeCheck))\n\t\t{\n\t\t\treturn !this.mouseUpNodeCheck;\n\t\t}\n\n\t\t// if (top.BX(this.id + '_time_from_div') && top.BX(this.id + '_time_from_div').style.display !== 'none')\n\t\t// \treturn true;\n\t\t//\n\t\t// if (top.BX(this.id + '_time_to_div') && top.BX(this.id + '_time_to_div').style.display !== 'none')\n\t\t// \treturn true;\n\n\t\treturn this.denyClose;\n\t}\n\n\tsetCurrentEntry(entry = null, userIndex = null)\n\t{\n\t\tthis.entry = EntryManager.getEntryInstance(entry, userIndex, {type: this.type, ownerId: this.ownerId});\n\n\t\tEntryManager.registerEntrySlider(this.entry, this);\n\t}\n\n\tgetCurrentEntry()\n\t{\n\t\treturn this.entry;\n\t}\n\n\tgetCurrentSection()\n\t{\n\t\tlet\n\t\t\tsection = false,\n\t\t\tsectionId = 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{\n\t\t\tsection = this.sections[this.sectionIndex[sectionId]];\n\t\t}\n\n\t\treturn section;\n\t}\n\n\tgetCurrentSectionId()\n\t{\n\t\tlet\n\t\t\tsection = 0,\n\t\t\tentry = this.getCurrentEntry();\n\n\t\tif (entry instanceof Entry && this.sections[this.sectionIndex[entry.sectionId]])\n\t\t{\n\t\t\tsection = parseInt(entry.sectionId);\n\t\t}\n\n\t\tif (!section)\n\t\t{\n\t\t\tif (this.type === 'location')\n\t\t\t{\n\t\t\t\tsection = RoomsManager.getNewEntrySectionId();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tsection = SectionManager.getNewEntrySectionId(this.type, this.ownerId);\n\n\t\t\t}\n\t\t\tif (!this.sectionIndex[section])\n\t\t\t{\n\t\t\t\tsection = null;\n\t\t\t}\n\t\t}\n\n\t\tif (!section && this.sections[0])\n\t\t{\n\t\t\tsection = parseInt(this.sections[0].ID);\n\t\t}\n\t\treturn section;\n\t}\n\n\tpinField(fieldName)\n\t{\n\t\tlet [placeHolders, placeHoldersAdditional] = this.getPlaceholders();\n\t\tlet\n\t\t\tfield = placeHoldersAdditional[fieldName],\n\t\t\tnewField = placeHolders[fieldName],\n\t\t\tfieldHeight = field.offsetHeight;\n\n\t\tfield.style.height = fieldHeight + 'px';\n\t\tsetTimeout(function(){Dom.addClass(field, 'calendar-hide-field');}, 0);\n\t\tnewField.style.height = '0';\n\n\t\tif (fieldName === 'description')\n\t\t{\n\t\t\tsetTimeout(function()\n\t\t\t{\n\t\t\t\tif (!this.DOM.descriptionAdditionalWrap)\n\t\t\t\t{\n\t\t\t\t\tthis.DOM.descriptionAdditionalWrap = this.DOM.additionalBlock.querySelector('.calendar-info-panel-description');\n\t\t\t\t}\n\n\t\t\t\tif (this.DOM.descriptionAdditionalWrap)\n\t\t\t\t{\n\n\t\t\t\t\twhile(this.DOM.descriptionAdditionalWrap.firstChild)\n\t\t\t\t\t{\n\t\t\t\t\t\tnewField.appendChild(this.DOM.descriptionAdditionalWrap.firstChild);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tnewField.style.height = fieldHeight + 'px';\n\t\t\t}.bind(this), 200);\n\n\t\t\tsetTimeout(function(){\n\t\t\t\tDom.removeClass(field, 'calendar-hide-field');\n\t\t\t\tfield.style.display = 'none';\n\t\t\t\tnewField.style.height = '';\n\t\t\t\tthis.pinnedFieldsIndex[fieldName] = true;\n\t\t\t\tlet editor = window[\"BXHtmlEditor\"].Get(this.editorId);\n\t\t\t\tif (editor)\n\t\t\t\t{\n\t\t\t\t\teditor.CheckAndReInit();\n\t\t\t\t}\n\t\t\t\tthis.saveSettings();\n\t\t\t\tthis.updateAdditionalBlockState();\n\t\t\t}.bind(this), 500);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsetTimeout(function()\n\t\t\t{\n\t\t\t\twhile(field.firstChild)\n\t\t\t\t{\n\t\t\t\t\tnewField.appendChild(field.firstChild);\n\t\t\t\t}\n\t\t\t\tnewField.style.height = fieldHeight + 'px';\n\t\t\t}, 200);\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tDom.removeClass(field, 'calendar-hide-field');\n\t\t\t\tfield.style.height = '';\n\t\t\t\tnewField.style.height = '';\n\t\t\t\tthis.pinnedFieldsIndex[fieldName] = true;\n\t\t\t\tthis.saveSettings();\n\t\t\t\tthis.updateAdditionalBlockState();\n\t\t\t}, 300);\n\t\t}\n\t}\n\n\tunPinField(fieldName)\n\t{\n\t\tlet [placeHolders, placeHoldersAdditional] = this.getPlaceholders();\n\t\tlet\n\t\t\tfield = placeHolders[fieldName],\n\t\t\tnewField = placeHoldersAdditional[fieldName],\n\t\t\tfieldHeight = field.offsetHeight;\n\n\t\tfield.style.height = fieldHeight + 'px';\n\t\tsetTimeout(function(){\n\t\t\tDom.addClass(field, 'calendar-hide-field');\n\t\t}, 0);\n\t\tnewField.style.height = '0';\n\n\t\tif (fieldName === 'description')\n\t\t{\n\t\t\tsetTimeout(function(){\n\t\t\t\tif (!this.DOM.descriptionAdditionalWrap)\n\t\t\t\t{\n\t\t\t\t\tthis.DOM.descriptionAdditionalWrap = this.DOM.additionalBlock.querySelector('.calendar-info-panel-description');\n\t\t\t\t}\n\n\t\t\t\tif (this.DOM.descriptionAdditionalWrap)\n\t\t\t\t{\n\t\t\t\t\twhile(field.firstChild)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.DOM.descriptionAdditionalWrap.appendChild(field.firstChild);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tnewField.style.display = '';\n\t\t\t\tnewField.style.height = fieldHeight + 'px';\n\t\t\t}.bind(this), 200);\n\n\t\t\tsetTimeout(function(){\n\t\t\t\tDom.removeClass(field, 'calendar-hide-field');\n\t\t\t\tfield.style.height = '';\n\t\t\t\tnewField.style.height = '';\n\t\t\t\tthis.pinnedFieldsIndex[fieldName] = false;\n\n\t\t\t\tlet editor = window[\"BXHtmlEditor\"].Get(this.editorId);\n\t\t\t\tif (editor)\n\t\t\t\t{\n\t\t\t\t\teditor.CheckAndReInit();\n\t\t\t\t}\n\n\t\t\t\tthis.saveSettings();\n\t\t\t\tthis.updateAdditionalBlockState();\n\t\t\t}.bind(this), 300);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsetTimeout(function(){\n\t\t\t\twhile(field.firstChild)\n\t\t\t\t{\n\t\t\t\t\tnewField.appendChild(field.firstChild);\n\t\t\t\t}\n\t\t\t\tnewField.style.height = fieldHeight + 'px';\n\t\t\t}, 200);\n\n\t\t\tsetTimeout(function(){\n\t\t\t\tDom.removeClass(field, 'calendar-hide-field');\n\t\t\t\tfield.style.height = '';\n\t\t\t\tnewField.style.height = '';\n\t\t\t\tthis.pinnedFieldsIndex[fieldName] = false;\n\n\t\t\t\tthis.saveSettings();\n\t\t\t\tthis.updateAdditionalBlockState();\n\t\t\t}.bind(this), 300);\n\t\t}\n\t}\n\n\tfieldIsPinned(fieldName)\n\t{\n\t\treturn this.pinnedFieldsIndex[fieldName];\n\t}\n\n\tgetPlaceholders()\n\t{\n\t\tif (!this.placeHolders)\n\t\t{\n\t\t\tthis.placeHolders = {};\n\t\t\tthis.placeHoldersAdditional = {};\n\n\t\t\tlet\n\t\t\t\ti,\n\t\t\t\tfieldId,\n\t\t\t\tnodes = this.DOM.formWrap.querySelectorAll('.calendar-field-additional-placeholder');\n\n\t\t\tfor (i = 0; i < nodes.length; i++)\n\t\t\t{\n\t\t\t\tfieldId = nodes[i].getAttribute('data-bx-block-placeholer');\n\t\t\t\tif (fieldId)\n\t\t\t\t{\n\t\t\t\t\tthis.placeHoldersAdditional[fieldId] = nodes[i];\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tnodes = this.DOM.formWrap.querySelectorAll('.calendar-field-placeholder');\n\t\t\tfor (i = 0; i < nodes.length; i++)\n\t\t\t{\n\t\t\t\tfieldId = nodes[i].getAttribute('data-bx-block-placeholer');\n\t\t\t\tif (fieldId)\n\t\t\t\t{\n\t\t\t\t\tthis.placeHolders[fieldId] = nodes[i];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn [this.placeHolders, this.placeHoldersAdditional];\n\t}\n\n\tgetSettings(settings)\n\t{\n\t\tthis.pinnedFieldsIndex = {};\n\t\tlet i, pinnedFields = [];\n\n\t\tfor (i in settings.pinnedFields)\n\t\t{\n\t\t\tif (settings.pinnedFields.hasOwnProperty(i))\n\t\t\t{\n\t\t\t\tpinnedFields.push(settings.pinnedFields[i]);\n\t\t\t\tthis.pinnedFieldsIndex[settings.pinnedFields[i]] = true;\n\t\t\t}\n\t\t}\n\t\tsettings.pinnedFields = pinnedFields;\n\t\treturn settings;\n\t}\n\n\tsaveSettings()\n\t{\n\t\tlet fieldName, pinnedFields = [];\n\n\t\tfor (fieldName in this.pinnedFieldsIndex)\n\t\t{\n\t\t\tif (this.pinnedFieldsIndex.hasOwnProperty(fieldName) && this.pinnedFieldsIndex[fieldName])\n\t\t\t{\n\t\t\t\tpinnedFields.push(fieldName);\n\t\t\t}\n\t\t}\n\n\t\tthis.formSettings.pinnedFields = pinnedFields;\n\t\tthis.BX.userOptions.save('calendar', this.formType, 'pinnedFields', pinnedFields);\n\t}\n\n\tupdateAdditionalBlockState(timeout)\n\t{\n\t\tif (timeout !== false)\n\t\t{\n\t\t\tif (this.updateAdditionalBlockTimeout)\n\t\t\t{\n\t\t\t\tclearTimeout(this.updateAdditionalBlockTimeout);\n\t\t\t\tthis.updateAdditionalBlockTimeout = null;\n\t\t\t}\n\t\t\tthis.updateAdditionalBlockTimeout = setTimeout(() => {this.updateAdditionalBlockState(false)}, 300);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlet i, names = this.DOM.additionalBlock.getElementsByClassName('js-calendar-field-name');\n\t\t\tDom.clean(this.DOM.pinnedNamesWrap);\n\t\t\tfor (i = 0; i < names.length; i++)\n\t\t\t{\n\t\t\t\tthis.DOM.pinnedNamesWrap.appendChild(Dom.create(\"SPAN\", {props: {className: 'calendar-additional-alt-promo-text'}, html: names[i].innerHTML}));\n\t\t\t}\n\n\t\t\tif (!names.length)\n\t\t\t{\n\t\t\t\tDom.addClass(this.DOM.additionalBlockWrap, 'calendar-additional-block-hidden');\n\t\t\t}\n\t\t\telse if (Dom.hasClass(this.DOM.additionalBlockWrap, 'calendar-additional-block-hidden'))\n\t\t\t{\n\t\t\t\tDom.removeClass(this.DOM.additionalBlockWrap, 'calendar-additional-block-hidden');\n\t\t\t}\n\n\t\t\tthis.checkLastItemBorder();\n\t\t}\n\t}\n\n\tcheckLastItemBorder()\n\t{\n\t\tlet\n\t\t\tnoBorderClass = 'no-border',\n\t\t\ti, nodes;\n\n\t\tnodes = this.DOM.mainBlock.querySelectorAll('.calendar-options-item-border');\n\t\tfor (i = 0; i < nodes.length; i++)\n\t\t{\n\t\t\tif (i === nodes.length - 1)\n\t\t\t{\n\t\t\t\tDom.addClass(nodes[i], noBorderClass);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tDom.removeClass(nodes[i], noBorderClass);\n\t\t\t}\n\t\t}\n\n\t\tnodes = this.DOM.additionalBlock.querySelectorAll('.calendar-options-item-border');\n\t\tfor (i = 0; i < nodes.length; i++)\n\t\t{\n\t\t\tif (i === nodes.length - 1)\n\t\t\t{\n\t\t\t\tDom.addClass(nodes[i], noBorderClass);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tDom.removeClass(nodes[i], noBorderClass);\n\t\t\t}\n\t\t}\n\t}\n\n\thandlePlannerSelectorChanges(event)\n\t{\n\t\tif (event instanceof BaseEvent)\n\t\t{\n\t\t\tlet data = event.getData();\n\t\t\t// Date time\n\t\t\tthis.dateTimeControl.setValue({\n\t\t\t\tfrom: data.dateFrom,\n\t\t\t\tto: data.dateTo\n\t\t\t});\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: data.dateFrom,\n\t\t\t\t\t\tto: data.dateTo,\n\t\t\t\t\t\tfullDay: data.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\n\t\t\tif (this.planner)\n\t\t\t{\n\t\t\t\tlet fromHours = parseInt(data.dateFrom.getHours()) + Math.floor(data.dateFrom.getMinutes() / 60);\n\t\t\t\tlet toHours = parseInt(data.dateTo.getHours()) + Math.floor(data.dateTo.getMinutes() / 60);\n\t\t\t\tif (\n\t\t\t\t\t(fromHours !== 0 && fromHours <= this.planner.shownScaleTimeFrom)\n\t\t\t\t\t|| (toHours !== 0 && toHours !== 23 && toHours + 1 >= this.planner.shownScaleTimeTo)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tthis.planner.updateSelector(data.dateFrom, data.dateTo, data.fullDay);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\thandleExpandPlannerTimeline(event)\n\t{\n\t\tif (event instanceof BaseEvent)\n\t\t{\n\t\t\tlet data = event.getData();\n\t\t\tif (data.reload)\n\t\t\t{\n\t\t\t\tthis.prevUserList = [];\n\t\t\t\tlet dateTime = this.dateTimeControl.getValue();\n\t\t\t\tthis.loadPlannerData({\n\t\t\t\t\tentityList: this.getUserSelectorEntityList(),\n\t\t\t\t\tfrom: Util.formatDate(data.dateFrom),\n\t\t\t\t\tto: Util.formatDate(data.dateTo),\n\t\t\t\t\ttimezone: dateTime.timezoneFrom,\n\t\t\t\t\tlocation: this.locationSelector.getTextValue(),\n\t\t\t\t\tfocusSelector: false\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tgetUserSelectorEntityList()\n\t{\n\t\treturn this.selectorEntityList;\n\t}\n\n\tsetUserSelectorEntityList(selectorEntityList)\n\t{\n\t\tthis.selectorEntityList = selectorEntityList;\n\t}\n\n\trefreshPlannerState()\n\t{\n\t\tlet dateTime = this.dateTimeControl.getValue();\n\t\tthis.loadPlannerData({\n\t\t\tentityList: this.getUserSelectorEntityList(),\n\t\t\tfrom: Util.formatDate(dateTime.from.getTime() - Util.getDayLength() * 3),\n\t\t\tto: Util.formatDate(dateTime.to.getTime() + Util.getDayLength() * 10),\n\t\t\ttimezone: dateTime.timezoneFrom,\n\t\t\tlocation: this.locationSelector.getTextValue()\n\t\t});\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\tif (this.locationCapacity !== 0)\n\t\t\t{\n\t\t\t\tLocation.setCurrentCapacity(this.locationCapacity);\n\t\t\t\tthis.locationCapacity = 0;\n\t\t\t}\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\tplannerIsShown()\n\t{\n\t\treturn this.DOM.plannerWrap && Dom.hasClass(this.DOM.plannerWrap, 'calendar-edit-planner-wrap-shown');\n\t}\n\n\tkeyHandler(e)\n\t{\n\t\tif (\n\t\t\t(e.ctrlKey || e.metaKey)\n\t\t\t&& !e.altKey\n\t\t\t&& e.keyCode === Util.getKeyCode('enter')\n\t\t\t&& this.checkTopSlider()\n\t\t)\n\t\t{\n\t\t\tthis.save();\n\t\t}\n\t}\n\n\tcheckTopSlider()\n\t{\n\t\tconst slider = Util.getBX().SidePanel.Instance.getTopSlider();\n\n\t\treturn slider && slider.options.type === 'calendar:slider';\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\tif (error.code === \"edit_entry_location_busy\")\n\t\t\t\t{\n\t\t\t\t\tthis.locationBusyAlert = Util.showFieldError(error.message, this.DOM.locationWrap, {clearTimeout: 10000});\n\t\t\t\t\treturn;\n\t\t\t\t}\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\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')\n\t\t\t&& entry.name !== this.DOM.form.name.value)\n\t\t{\n\t\t\tfields.push('name');\n\t\t}\n\n\t\t// Description\n\t\tif (!excludes.includes('description')\n\t\t\t&& entry.getDescription() !== this.DOM.form.desc.value)\n\t\t{\n\t\t\tfields.push('description');\n\t\t}\n\n\t\t// Location\n\t\tif (!excludes.includes('location')\n\t\t\t&&\n\t\t\tthis.locationSelector.getTextLocation(Location.parseStringValue(this.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 (!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{\n\t\t\tfields.push('date&time');\n\t\t}\n\n\t\t// Section\n\t\tif (!excludes.includes('section')\n\t\t\t&&\n\t\t\tparseInt(entry.sectionId) !== parseInt(this.DOM.sectionInput.value))\n\t\t{\n\t\t\tfields.push('section');\n\t\t}\n\n\t\t// Access codes\n\t\tif (!excludes.includes('codes')\n\t\t\t&&\n\t\t\tthis.getUserSelectorEntityList().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\tcheckCurrentUsersAccessibility()\n\t{\n\t\treturn this.getFormDataChanges().includes('date&time');\n\t}\n\n\tformDataChanged()\n\t{\n\t\treturn this.getFormDataChanges().length > 0;\n\t}\n\n\tgetUserCodes()\n\t{\n\t\tconst\n\t\t\tcodes = [],\n\t\t\tvaluesInput = this.DOM.attendeesWrap.querySelectorAll('input[name=\"EVENT_DESTINATION[]\"]');\n\n\t\tfor (let i = 0; i < valuesInput.length; i++)\n\t\t{\n\t\t\tif (!codes.includes(valuesInput[i].value))\n\t\t\t{\n\t\t\t\tcodes.push(valuesInput[i].value);\n\t\t\t}\n\t\t}\n\t\treturn codes;\n\t}\n\n\thandlePull(event: BaseEvent): void\n\t{\n\t\tif (!event instanceof BaseEvent)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst data = event.getData();\n\t\tconst command = data[0];\n\n\t\tconst params = Type.isObjectLike(data[1]) ? data[1] : {};\n\n\t\tswitch(command)\n\t\t{\n\t\t\tcase 'edit_event':\n\t\t\tcase 'delete_event':\n\t\t\tcase 'set_meeting_status':\n\t\t\t\tconst userIdList = Type.isArray(params?.fields?.ATTENDEES) ? params.fields.ATTENDEES: [];\n\t\t\t\tconst eventOwner = params?.fields?.CAL_TYPE === 'user'\n\t\t\t\t\t? parseInt(params?.fields?.OWNER_ID)\n\t\t\t\t\t: parseInt(params?.fields?.CREATED_BY);\n\t\t\t\tif (!userIdList.includes(eventOwner))\n\t\t\t\t{\n\t\t\t\t\tuserIdList.push(eventOwner);\n\t\t\t\t}\n\t\t\t\tthis.clearAccessibilityData(userIdList);\n\n\t\t\t\tthis.refreshPlannerState();\n\t\t\t\tbreak;\n\t\t}\n\t}\n\n\tclearAccessibilityData(userIdList: Object): void\n\t{\n\t\tif (Type.isArray(userIdList) && userIdList.length && this.prevUserList.length)\n\t\t{\n\t\t\tthis.prevUserList = this.prevUserList.filter((userId) => {\n\t\t\t\treturn !userIdList.includes(userId);\n\t\t\t});\n\t\t}\n\t}\n\n\tgetParticipantsSelectorEntityList()\n\t{\n\t\tif (this.participantsSelectorEntityList && this.participantsSelectorEntityList.length)\n\t\t{\n\t\t\treturn this.participantsSelectorEntityList;\n\t\t}\n\n\t\tlet entityList = [\n\t\t\t{\n\t\t\t\tid: 'user',\n\t\t\t\toptions: {\n\t\t\t\t\tinviteGuestLink: true,\n\t\t\t\t\temailUsers: true,\n\t\t\t\t}\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'project'\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'department',\n\t\t\t\toptions: {selectMode: 'usersAndDepartments'}\n\t\t\t},\n\t\t\t{\n\t\t\t\tid: 'meta-user',\n\t\t\t\toptions: { 'all-users': true }\n\t\t\t}\n\t\t];\n\n\t\tif (this.attendeesPreselectedItems)\n\t\t{\n\t\t\tlet projectRole = null;\n\n\t\t\tthis.attendeesPreselectedItems\n\t\t\t\t.forEach((item) => {\n\t\t\t\t\tconst type = item[0];\n\t\t\t\t\tconst role = item[1];\n\t\t\t\t\tif (type === 'project-roles')\n\t\t\t\t\t{\n\t\t\t\t\t\tprojectRole = role;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t;\n\n\t\t\tif (projectRole)\n\t\t\t{\n\t\t\t\tentityList = [\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'user'\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tid: 'project-roles',\n\t\t\t\t\t\toptions: {\n\t\t\t\t\t\t\tprojectId: projectRole.split('_')[0]\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdynamicLoad: true\n\t\t\t\t\t}\n\t\t\t\t];\n\t\t\t}\n\t\t}\n\n\t\treturn entityList;\n\t}\n\n\tisSyncSection(section)\n\t{\n\t\treturn section.EXTERNAL_TYPE === 'icloud'\n\t\t\t|| section.EXTERNAL_TYPE === 'google'\n\t\t\t|| section.EXTERNAL_TYPE === 'office365'\n\t\t\t|| (section.connectionLinks && section.connectionLinks.length)\n\t\t;\n\t}\n\n\tgetSectionsForEditEvent(sections, currentSection)\n\t{\n\t\tconst result = [];\n\t\tconst currentType = currentSection.CAL_TYPE;\n\t\tresult.push(currentSection);\n\n\t\tsections.forEach((section) => {\n\t\t\tif (!this.isSyncSection(section) && section.CAL_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\n\t\tif (Type.isArray(this.sections))\n\t\t{\n\t\t\tthis.sections.forEach((value, ind) => {this.sectionIndex[parseInt(value.ID)] = ind;}, this);\n\t\t}\n\t}\n\n\tunsetHiddenSection(section, sectionManager)\n\t{\n\t\tconst sectId = parseInt(section.ID);\n\t\tif (!sectionManager.sectionIsShown(sectId))\n\t\t{\n\t\t\tlet hiddenSections = sectionManager.getHiddenSections();\n\t\t\thiddenSections = hiddenSections.filter((sectionId) => {return sectionId !==sectId;}, this);\n\t\t\tsectionManager.setHiddenSections(hiddenSections);\n\t\t\tsectionManager.saveHiddenSections();\n\t\t}\n\t}\n}"],"names":["SliderDateTimeControl","DateTimeControl","create","DOM","dateTimeWrap","outerContent","querySelector","UID","fromDate","toDate","fromTime","toTime","fromTimeControl","TimeSelector","input","onChangeCallback","handleTimeFromChange","bind","toTimeControl","handleTimeToChange","fullDay","defTimezoneWrap","defTimezone","fromTz","toTz","tzButton","tzOuterCont","tzCont","title","Loc","getMessage","prepareModel","bindEventHandlers","BX","isAmPmMode","style","minWidth","Dom","adjust","props","autocomplete","EventEditForm","constructor","options","uid","sliderId","zIndex","denyClose","formType","STATE","READY","REQUEST","ERROR","sections","sectionIndex","trackingUsersList","userSettings","prevUserList","loadedAccessibilityData","name","type","isLocationCalendar","locationAccess","locationCapacity","dayOfWeekMonthFormat","roomsManager","userId","parseInt","ownerId","entryId","entry","formDataValue","emitter","EventEmitter","setEventNamespace","Util","getBX","context","getCalendarContext","calendarContext","setCalendarContext","formSettings","pinnedFields","Type","isDate","entryDateFrom","from","to","Date","getTime","participantsEntityList","isArray","participantsSelectorEntityList","entryName","entryDescription","description","refreshPlanner","Runtime","debounce","refreshPlannerState","state","sliderOnClose","hide","handlePullBind","handlePull","keyHandlerBind","keyHandler","initInSlider","slider","promiseResolve","getUrl","addCustomEvent","onLoadSlider","destroy","setCurrentEntry","createContent","then","html","isFunction","opened","show","params","SidePanel","Instance","open","contentCallback","label","text","bgColor","events","onClose","onCloseComplete","onLoad","isOpened","Event","document","subscribe","mouseUpNodeCheck","e","mousedownTarget","target","srcElement","setTimeout","locationBusyAlert","remove","window","proxy","denySliderClose","allowSliderClose","event","getSlider","content","layout","getData","get","initControls","setFormValues","close","checkDenyClose","save","isPlainObject","id","hasExternalEmailUsers","checkEmailLimitationPopup","emailLimitationDialogShown","EntryManager","showEmailLimitationDialog","callback","sendFromEmail","showConfirmedEmailDialog","isRecursive","confirmed","getFormDataChanges","length","showConfirmEditDialog","recursionMode","isFirstInstance","isMeeting","sendInvitesAgain","undefined","includes","getAttendees","find","item","STATUS","showReInviteUsersDialog","addClass","saveBtn","UI","Button","State","CLOCKING","closeBtn","DISABLED","form","value","location","locationSelector","getTextValue","editor","SaveContent","section","getCurrentSection","COLOR","toLowerCase","colorSelector","getValue","color","current_date_from","formatDate","rec_edit_mode","appendChild","Tag","render","requestUid","meeting_host","data","MEETING_HOST","chat_id","MEETING","CHAT_ID","registerRequestId","attendeesEntityList","getUserSelectorEntityList","clean","userSelectorValueWarp","forEach","entity","index","entityId","checkCurrentUsersAccessibility","previousAttendeesList","getAttendeesEntityList","ajax","runAction","FormData","analyticsLabel","calendarAction","emailGuests","markView","getCurrentView","markCrm","markRrule","repeatSelector","getType","markMeeting","markType","response","unsetHiddenRoom","Location","parseStringValue","room_id","sectionManager","unsetHiddenSection","removeClass","showEditEntryNotification","showNewEntryNotification","countEventWithEmailGuestAmount","setEventWithEmailGuestAmount","eventList","REMIND","setNewEntryReminders","DT_SKIP_TIME","emit","BaseEvent","responseData","busyUsersList","handleBusyUsersError","errors","error","code","push","showError","busyUsers","users","userIds","hasOwnProperty","busyUsersDialog","BusyUsersDialog","exclude_users","join","clientSideCheck","denyAction","removeCustomEvent","attendeesSelector","closeAll","getSliderPage","onCustomEvent","plannerId","unbind","unsubscribe","setCurrentCapacity","closeAllPopups","planner","clearPlannerWatches","promise","Promise","getCurrentEntry","event_id","date_from","form_type","entityList","isOpen","util","trim","set","additionalParams","updateEntryData","meetSection","uniqueId","editorId","getSettings","userIndex","entityType","EMAIL_USER","setUserSelectorEntityList","attendeesPreselectedItems","map","setUserSettings","setEventWithEmailGuestLimit","eventWithEmailGuestLimit","handleSections","handleLocationData","locationFeatureEnabled","locationList","iblockMeetingRoomList","plannerFeatureEnabled","lock","sectionId","SectionManager","setNewEntrySectionId","fulfill","formWrap","buttonsWrap","initFormFieldManager","initDateTimeControl","initNameControl","initEditorControl","initAttendeesControl","initPlanner","initReminderControl","initSectionSelector","initLocationControl","initRepeatRuleControl","initColorControl","initCrmUfControl","initAdditionalControls","checkLastItemBorder","ZIndexManager","register","entryData","Entry","prepareData","getTimezoneFrom","getTimezoneTo","setTimezone","timezoneName","timezoneDefaultName","CAL_TYPES","setSectionId","ind","ID","getSectionsForEditEvent","filter","locationItem","PERM","view_full","setLocationList","setMeetingRoomList","dateTimeControl","setValue","isBoolean","timezoneFrom","timezoneTo","getName","sectionInput","getCurrentSectionId","sectionSelector","updateValue","fieldIsPinned","pinField","isSyncSection","setViewMode","getColor","remindersControl","reminder","getReminders","rrule","getRrule","accessibilityInput","accessibility","default","getLocation","checkLocationAccessibility","currentEventId","privateEventCheckbox","checked","private","importantEventCheckbox","important","meeting_notify","meetingNotify","NOTIFY","hide_guests","hideGuests","HIDE_GUESTS","allow_invite","ALLOW_INVITE","allowInvite","dateTime","updateSelector","focus","loadPlannerData","getDayLength","timezone","showHideGuestsOption","hideHideGuestsOption","switchFullDay","isString","setFullDayMode","switchTimezone","hasClass","mainBlock","additionalBlockWrap","additionalBlock","pinnedNamesWrap","additionalSwitch","toggleClass","getAttribute","fieldName","unPinField","showTimezone","wasChangedByUser","defaultReminders","getNewEntryReminders","select","reminderValues","reminderWrap","reminderInputsWrap","Reminder","wrap","values","attrs","SectionSelector","outerWrap","defaultCalendarType","defaultOwnerId","sectionList","sectionGroupList","getSectionGroupList","mode","NAME","selectCallback","sectionValue","saveDefaultSectionId","calendarType","delegate","Get","top","IsShown","customizeHtmlEditor","SetContent","toolbar","controls","spoiler","pCont","locationWrap","locationInput","inputName","richLocationEnabled","rruleWrap","RepeatSelector","rruleType","getDate","changeType","userSelectorWrap","userTagSelector","EntityTagSelector","dialogOptions","preselectedItems","handleUserSelectorChanges","entities","getParticipantsSelectorEntityList","searchTabOptions","stubOptions","subtitle","icon","iconOpacity","arrow","renderTo","hideGuestsWrap","showLoader","selectedItems","getDialog","getSelectedItems","display","initHintNode","setHideGuestsValue","plannerOuterWrap","Planner","offsetWidth","locked","handlePlannerSelectorChanges","handleExpandPlannerTimeline","checkLocationForm","resolve","entryLocation","LOCATION","dateFrom","scaleDateFrom","dateTo","scaleDateTo","entries","hideLoader","update","colorWrap","ColorSelector","crmUfWrap","loader","getLoader","height","width","isDomNode","isNull","getEntryInstance","registerEntrySlider","RoomsManager","getNewEntrySectionId","placeHolders","placeHoldersAdditional","getPlaceholders","field","newField","fieldHeight","offsetHeight","descriptionAdditionalWrap","firstChild","pinnedFieldsIndex","CheckAndReInit","saveSettings","updateAdditionalBlockState","i","fieldId","nodes","querySelectorAll","settings","userOptions","timeout","updateAdditionalBlockTimeout","clearTimeout","names","getElementsByClassName","className","innerHTML","noBorderClass","fromHours","getHours","Math","floor","getMinutes","toHours","shownScaleTimeFrom","shownScaleTimeTo","reload","focusSelector","selectorEntityList","usersCount","getCurrentCapacity","addCapacityAlert","removeCapacityAlert","plannerIsShown","plannerWrap","ctrlKey","metaKey","altKey","keyCode","getKeyCode","checkTopSlider","getTopSlider","errorList","errorText","showFieldError","message","alert","excludes","fields","getDescription","desc","getTextLocation","isFullDay","toString","formDataChanged","getUserCodes","codes","valuesInput","attendeesWrap","command","isObjectLike","userIdList","ATTENDEES","eventOwner","CAL_TYPE","OWNER_ID","CREATED_BY","clearAccessibilityData","inviteGuestLink","emailUsers","selectMode","projectRole","role","projectId","split","dynamicLoad","EXTERNAL_TYPE","connectionLinks","currentSection","result","currentType","sectId","sectionIsShown","hiddenSections","getHiddenSections","setHiddenSections","saveHiddenSections"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.27 |
proxy
|
phpinfo
|
Settings