403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/cvetdv.ru/bitrix/js/calendar/sectionmanager/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/js/calendar/sectionmanager/dist/sectionmanager.bundle.js.map
{"version":3,"file":"sectionmanager.bundle.js","sources":["../src/calendarsection.js","../src/calendartasksection.js","../src/sectionmanager.js"],"sourcesContent":["import {Util} from 'calendar.util';\nimport { Event, Type } from 'main.core';\nimport {SectionManager} from \"calendar.sectionmanager\";\n\nexport class CalendarSection\n{\n\tconstructor(data)\n\t{\n\t\tthis.updateData(data);\n\t\tthis.calendarContext = Util.getCalendarContext();\n\t}\n\n\tgetId(): number\n\t{\n\t\treturn this.id;\n\t}\n\n\tupdateData(data)\n\t{\n\t\tthis.data = data || {};\n\t\tthis.type = data.CAL_TYPE || '';\n\t\tthis.ownerId = parseInt(data.OWNER_ID) || 0;\n\t\tthis.id = parseInt(data.ID);\n\t\tthis.color = this.data.COLOR;\n\t\tthis.name = this.data.NAME;\n\t}\n\n\tisShown(): boolean\n\t{\n\t\treturn this.calendarContext.sectionManager.sectionIsShown(this.id);\n\t}\n\n\tshow(): void\n\t{\n\t\tif (!this.isShown())\n\t\t{\n\t\t\tlet hiddenSections = this.calendarContext.sectionManager.getHiddenSections();\n\t\t\thiddenSections = hiddenSections.filter((sectionId) => {return sectionId !== this.id;}, this);\n\t\t\tthis.calendarContext.sectionManager.setHiddenSections(hiddenSections);\n\t\t\tthis.calendarContext.sectionManager.saveHiddenSections();\n\t\t}\n\t}\n\n\thide(): void\n\t{\n\t\tif (this.isShown())\n\t\t{\n\t\t\tconst hiddenSections = this.calendarContext.sectionManager.getHiddenSections();\n\t\t\thiddenSections.push(this.id);\n\t\t\tthis.calendarContext.sectionManager.setHiddenSections(hiddenSections);\n\t\t\tthis.calendarContext.sectionManager.saveHiddenSections();\n\t\t}\n\t}\n\n\tremove()\n\t{\n\t\tconst EventAlias = Util.getBX().Event;\n\t\tEventAlias.EventEmitter.emit(\n\t\t\t'BX.Calendar.Section:delete',\n\t\t\tnew EventAlias.BaseEvent({data: {sectionId: this.id}})\n\t\t);\n\n\t\tBX.ajax.runAction('calendar.api.calendarajax.deleteCalendarSection', {\n\t\t\tdata: {\n\t\t\t\tid: this.id\n\t\t\t}\n\t\t})\n\t\t.then(\n\t\t\t(response) => {\n\t\t\t\treturn this.updateListAfterDelete();\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\t// this.calendar.displayError(response.errors);\n\t\t\t}\n\t\t);\n\t}\n\n\thideSyncSection()\n\t{\n\t\tthis.hide();\n\t\tBX.onCustomEvent(this.calendar, 'BXCalendar:onSectionDelete', [this.id]);\n\t\tUtil.getBX().Event.EventEmitter.emit(\n\t\t\t'BX.Calendar.Section:delete',\n\t\t\tnew Event.BaseEvent({data: {sectionId: this.id}})\n\t\t);\n\n\t\t//hideExternalCalendarSection\n\t\tBX.ajax.runAction('calendar.api.calendarajax.setSectionStatus', {\n\t\t\tdata: {\n\t\t\t\tsectionStatus: {\n\t\t\t\t\t[this.id] : false\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\t\t.then(\n\t\t\t(response) => {\n\t\t\t\treturn this.updateListAfterDelete();\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\t// this.calendar.displayError(response.errors);\n\t\t\t}\n\t\t);\n\t}\n\n\thideExternalCalendarSection()\n\t{\n\t\tthis.hide();\n\t\tBX.onCustomEvent(this.calendar, 'BXCalendar:onSectionDelete', [this.id]);\n\t\tUtil.getBX().Event.EventEmitter.emit(\n\t\t\t'BX.Calendar.Section:delete',\n\t\t\tnew Event.BaseEvent({data: {sectionId: this.id}})\n\t\t);\n\n\t\tBX.ajax.runAction('calendar.api.calendarajax.hideExternalCalendarSection', {\n\t\t\tdata: {\n\t\t\t\tid: this.id\n\t\t\t}\n\t\t})\n\t\t.then(\n\t\t\t(response) => {\n\t\t\t\treturn this.updateListAfterDelete();\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\t// this.calendar.displayError(response.errors);\n\t\t\t}\n\t\t);\n\t}\n\n\tgetLink()\n\t{\n\t\treturn this.data && this.data.LINK ? this.data.LINK : '';\n\t}\n\n\tcanBeConnectedToOutlook()\n\t{\n\t\treturn !this.isPseudo() && this.data.OUTLOOK_JS && !(this.data.CAL_DAV_CAL && this.data.CAL_DAV_CON) && !BX.browser.IsMac();\n\t}\n\n\tconnectToOutlook()\n\t{\n\t\tBX.ajax.runAction('calendar.api.syncajax.getOutlookLink', {\n\t\t\tdata: {\n\t\t\t\tid: this.id\n\t\t\t}\n\t\t})\n\t\t.then(\n\t\t\t(response) => {\n\t\t\t\tconst url = response.data.result;\n\n\t\t\t\teval(url);\n\t\t\t},\n\t\t\t(response) => {\n\t\t\t\t// this.calendar.displayError(response.errors);\n\t\t\t}\n\t\t)\n\t}\n\n\tcanDo(action)\n\t{\n\t\t// action: access|add|edit|edit_section|view_full|view_time|view_title\n\t\tif (this.isVirtual() && ['access', 'add', 'edit'].includes(action))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn this.hasPermission(action);\n\t}\n\n\thasPermission(action)\n\t{\n\t\tif (\n\t\t\taction === 'edit_section'\n\t\t\t&& Util.getCalendarContext()?.isCollabUser\n\t\t)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tif (action === 'view_event')\n\t\t{\n\t\t\taction = 'view_time';\n\t\t}\n\n\t\tif (!this.data.PERM[action])\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\treturn this.data.PERM && this.data.PERM[action];\n\t}\n\n\tisSuperposed()\n\t{\n\t\treturn !this.isPseudo() && !!this.data.SUPERPOSED;\n\t}\n\n\tisPseudo()\n\t{\n\t\treturn false;\n\t}\n\n\tisVirtual()\n\t{\n\t\treturn (this.data.CAL_DAV_CAL && this.data.CAL_DAV_CAL.indexOf('@virtual/events/') !== -1)\n\t\t\t|| (this.data.GAPI_CALENDAR_ID && this.data.GAPI_CALENDAR_ID.indexOf('@group.v.calendar.google.com') !== -1)\n\t\t\t|| (this.data.EXTERNAL_TYPE === 'google_readonly')\n\t\t\t|| (this.data.EXTERNAL_TYPE === 'google_freebusy')\n\t}\n\n\tisGoogle()\n\t{\n\t\tconst googleTypes = [\n\t\t\t'google_readonly',\n\t\t\t'google',\n\t\t\t'google_write_read',\n\t\t\t'google_freebusy'\n\t\t]\n\n\t\treturn !this.isPseudo() && googleTypes.includes(this.data.EXTERNAL_TYPE);\n\t}\n\n\tisCalDav()\n\t{\n\t\treturn !this.isPseudo() && this.data.CAL_DAV_CAL && this.data.CAL_DAV_CON;\n\t}\n\n\tisIcloud()\n\t{\n\t\treturn !this.isPseudo() && this.data.EXTERNAL_TYPE === 'icloud';\n\t}\n\n\tisOffice365()\n\t{\n\t\treturn !this.isPseudo() && this.data.EXTERNAL_TYPE === 'office365';\n\t}\n\n\tisArchive()\n\t{\n\t\treturn !this.isPseudo() && this.data.EXTERNAL_TYPE === 'archive';\n\t}\n\n\tisExchange()\n\t{\n\t\treturn !this.isPseudo() && this.data['IS_EXCHANGE'];\n\t}\n\n\tisCompanyCalendar()\n\t{\n\t\treturn !this.isPseudo() && this.type !== 'user' && this.type !== 'group' && !this.ownerId;\n\t}\n\n\tisGroupCalendar()\n\t{\n\t\treturn !this.isPseudo() && this.type === 'group';\n\t}\n\n\thasConnection()\n\t{\n\t\treturn !this.isPseudo() && this.data.connectionLinks && this.data.connectionLinks.length;\n\t}\n\n\tisLocationRoom()\n\t{\n\t\treturn this.type === 'location';\n\t}\n\n\tbelongsToView()\n\t{\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\treturn this.type === calendarContext.getCalendarType()\n\t\t\t&& this.ownerId === calendarContext.getOwnerId();\n\t}\n\n\tbelongsToOwner()\n\t{\n\t\treturn this.belongsToUser(Util.getCalendarContext().getUserId());\n\t}\n\n\tbelongsToUser(userId): boolean\n\t{\n\t\treturn this.type === 'user'\n\t\t\t&& this.ownerId === parseInt(userId)\n\t\t\t&& this.data.ACTIVE !== 'N';\n\t}\n\n\tgetExternalType(): string\n\t{\n\t\treturn this.data.EXTERNAL_TYPE\n\t\t\t? this.data.EXTERNAL_TYPE\n\t\t\t: (this.isCalDav() ? 'caldav' : '')\n\t\t;\n\t}\n\n\tgetConnectionLinks(): object\n\t{\n\t\treturn Type.isArray(this.data.connectionLinks)\n\t\t\t? this.data.connectionLinks\n\t\t\t: [];\n\t}\n\n\texternalTypeIsLocal(): boolean\n\t{\n\t\treturn this.getExternalType() === SectionManager.EXTERNAL_TYPE_LOCAL\n\t\t\t|| this.isCompanyCalendar()\n\t\t\t|| this.isGroupCalendar()\n\t\t;\n\t}\n\n\tisPrimaryForConnection(): boolean\n\t{\n\t\treturn !this.externalTypeIsLocal() && this.getConnectionLinks().find(connection => {\n\t\t\treturn connection.isPrimary === 'Y';\n\t\t});\n\t}\n\n\tisActive()\n\t{\n\t\treturn this.data.ACTIVE !== 'N';\n\t}\n\n\tgetType()\n\t{\n\t\treturn this.type;\n\t}\n\n\tgetOwnerId()\n\t{\n\t\treturn this.ownerId;\n\t}\n\n\tgetConnectionIdList()\n\t{\n\t\tconst connectionIdList = [];\n\t\tlet connectionId =  parseInt(this.data.CAL_DAV_CON, 10);\n\t\tif (connectionId)\n\t\t{\n\t\t\tconnectionIdList.push(connectionId);\n\t\t}\n\n\t\treturn connectionIdList;\n\t}\n\n\n\tupdateListAfterDelete()\n\t{\n\t\tconst sectionManager = Util.getCalendarContext().sectionManager;\n\t\tlet reload = true;\n\t\tlet section;\n\n\t\tfor (let i = 0; i < sectionManager.sections.length; i++)\n\t\t{\n\t\t\tsection = sectionManager.sections[i];\n\t\t\tif (\n\t\t\t\tsection.id !== this.id\n\t\t\t\t&& section.belongsToView()\n\t\t\t\t&& !section.isGoogle()\n\t\t\t\t&& !section.isIcloud()\n\t\t\t\t&& !section.isOffice365()\n\t\t\t\t&& !section.isCalDav()\n\t\t\t\t&& !section.isArchive()\n\t\t\t)\n\t\t\t{\n\t\t\t\treload = false;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\tconst calendar = Util.getCalendarContext();\n\t\tif (!calendar || reload)\n\t\t{\n\t\t\treturn Util.getBX().reload();\n\t\t}\n\t\tcalendar.reload();\n\t}\n\n\tisCollab()\n\t{\n\t\treturn this.data['IS_COLLAB'];\n\t}\n}\n","import { Loc } from 'main.core';\nimport { CalendarSection } from './calendarsection';\n\nexport class CalendarTaskSection extends CalendarSection\n{\n\tconstructor(data = {}, {type, userId, ownerId})\n\t{\n\t\tconst defaultColor = '#ff5b55';\n\t\tlet belongToUser = false;\n\t\tlet defaultName = Loc.getMessage('EC_SEC_USER_TASK_DEFAULT');\n\n\t\tif (type === 'user' && userId === ownerId)\n\t\t{\n\t\t\tdefaultName = Loc.getMessage('EC_SEC_MY_TASK_DEFAULT');\n\t\t\tbelongToUser = true;\n\t\t}\n\t\telse if(type === 'group')\n\t\t{\n\t\t\tdefaultName = Loc.getMessage('EC_SEC_GROUP_TASK_DEFAULT');\n\t\t}\n\n\t\tsuper({\n\t\t\tID: 'tasks',\n\t\t\tNAME: data.name || defaultName,\n\t\t\tCOLOR: data.color || defaultColor,\n\t\t\tPERM: {\n\t\t\t\tedit_section: true,\n\t\t\t\tview_full: true,\n\t\t\t\tview_time: true,\n\t\t\t\tview_title: true\n\t\t\t}\n\t\t});\n\n\t\tthis.isUserTaskSection = belongToUser;\n\t}\n\n\tisPseudo(): boolean\n\t{\n\t\treturn true;\n\t}\n\n\ttaskSectionBelongToUser()\n\t{\n\t\treturn this.isUserTaskSection;\n\t}\n\n\tupdateData(data)\n\t{\n\t\tsuper.updateData(data);\n\t\tthis.id = data.ID;\n\t}\n}","import {Util} from 'calendar.util';\nimport {Event, Loc, Runtime, Type} from 'main.core';\nimport {CalendarSection} from './calendarsection';\nimport {CalendarTaskSection} from './calendartasksection';\nimport {EventEmitter} from 'main.core.events';\n\nexport { CalendarSection };\n\nexport class SectionManager\n{\n\tstatic newEntrySectionId = null;\n\tstatic EXTERNAL_TYPE_LOCAL = 'local';\n\tstatic RELOAD_DELAY = 1000;\n\n\tconstructor(data, config)\n\t{\n\t\tthis.setSections(data.sections);\n\t\tthis.setConfig(config);\n\t\tthis.addTaskSection();\n\t\tthis.sortSections();\n\t\tEventEmitter.subscribeOnce('BX.Calendar.Section:delete', (event) => {\n\t\t\tthis.deleteSectionHandler(event.data.sectionId);\n\t\t});\n\n\t\tthis.reloadDataDebounce = Runtime.debounce(this.reloadData, SectionManager.RELOAD_DELAY, this);\n\t}\n\n\tsetSections(rawSections = [])\n\t{\n\t\tthis.sections = [];\n\t\tthis.sectionIndex = {};\n\n\t\trawSections.forEach((sectionData) => {\n\t\t\tconst section = new CalendarSection(sectionData);\n\t\t\tif (section.canDo('view_time'))\n\t\t\t{\n\t\t\t\tthis.sections.push(section);\n\t\t\t\tthis.sectionIndex[section.getId()] = this.sections.length - 1;\n\t\t\t}\n\t\t});\n\t}\n\n\tsortSections()\n\t{\n\t\tthis.sectionIndex = {};\n\t\tthis.sections = this.sections.sort((a, b) => {\n\t\t\tif (Type.isFunction(a.isPseudo) && a.isPseudo())\n\t\t\t{\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\telse if (Type.isFunction(b.isPseudo) && b.isPseudo())\n\t\t\t{\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\treturn a.name.localeCompare(b.name);\n\t\t});\n\n\t\tthis.sections.forEach((section, index) => {\n\t\t\tthis.sectionIndex[section.getId()] = index;\n\t\t});\n\t}\n\n\tsetConfig(config)\n\t{\n\t\tthis.setHiddenSections(config.hiddenSections);\n\t\tthis.calendarType = config.type;\n\t\tthis.ownerId = config.ownerId;\n\t\tthis.ownerName = config.ownerName || '';\n\t\tthis.userId = config.userId;\n\t\tthis.defaultSectionAccess = config.new_section_access || {};\n\n\t\tthis.sectionAccessTasks = config.sectionAccessTasks;\n\t\tthis.showTasks = config.showTasks;\n\t\tthis.customizationData = config.sectionCustomization || {};\n\t\tthis.meetSectionId = parseInt(config.meetSectionId, 10);\n\t}\n\n\taddTaskSection()\n\t{\n\t\tif (this.showTasks)\n\t\t{\n\t\t\tconst taskSection = new CalendarTaskSection(\n\t\t\t\tthis.customizationData['tasks' + this.ownerId],\n\t\t\t\t{\n\t\t\t\t\ttype: this.calendarType,\n\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\townerId: this.ownerId\n\t\t\t\t}\n\t\t\t);\n\t\t\tthis.sections.push(taskSection);\n\t\t\tthis.sectionIndex[taskSection.id] = this.sections.length - 1;\n\t\t}\n\t}\n\n\tgetCalendarType()\n\t{\n\t\treturn this.calendarType;\n\t}\n\n\thandlePullChanges(params)\n\t{\n\t\tif (params.command === 'delete_section')\n\t\t{\n\t\t\tconst sectionId = parseInt(params.fields.ID, 10);\n\t\t\tif (this.sectionIndex[sectionId])\n\t\t\t{\n\t\t\t\tthis.deleteSectionHandler(sectionId);\n\t\t\t\tUtil.getBX().Event.EventEmitter.emit(\n\t\t\t\t\t'BX.Calendar.Section:pull-delete',\n\t\t\t\t\tnew Event.BaseEvent(\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tdata: { sectionId: sectionId }\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\tthis.reloadDataDebounce();\n\t\t\t}\n\t\t}\n\t\telse if (params.command === 'edit_section')\n\t\t{\n\t\t\tthis.reloadDataDebounce();\n\t\t\tUtil.getBX().Event.EventEmitter.emit('BX.Calendar:doRefresh');\n\t\t}\n\t\telse if (params.command === 'hidden_sections_updated')\n\t\t{\n\t\t\tthis.setHiddenSections(params.hiddenSections);\n\t\t\tthis.reloadDataDebounce();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.reloadDataDebounce();\n\t\t}\n\t}\n\n\treloadData()\n\t{\n\t\tBX.ajax.runAction('calendar.api.calendarajax.getSectionList', {\n\t\t\t\tdata: {\n\t\t\t\t\t'type': this.calendarType,\n\t\t\t\t\t'ownerId': this.ownerId\n\t\t\t\t}\n\t\t\t})\n\t\t\t.then(response => {\n\t\t\t\t\tthis.setSections(response.data.sections || []);\n\t\t\t\t\tthis.sortSections();\n\t\t\t\t\tif (response.data.config)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.setConfig(config);\n\t\t\t\t\t}\n\t\t\t\t\tthis.addTaskSection();\n\t\t\t\t\tUtil.getBX().Event.EventEmitter.emit(\n\t\t\t\t\t\t'BX.Calendar.Section:pull-reload-data'\n\t\t\t\t\t);\n\t\t\t\t}\n\t\t\t);\n\t}\n\n\tgetSections()\n\t{\n\t\treturn this.sections;\n\t}\n\n\tgetSuperposedSectionList()\n\t{\n\t\tconst result = [];\n\t\tfor (let i = 0; i < this.sections.length; i++)\n\t\t{\n\t\t\tif (\n\t\t\t\tthis.sections[i].isSuperposed()\n\t\t\t\t&& this.sections[i].isActive()\n\t\t\t)\n\t\t\t{\n\t\t\t\tresult.push(this.sections[i]);\n\t\t\t}\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tgetSectionListForEdit()\n\t{\n\t\tconst result = [];\n\t\tfor (let i = 0; i < this.sections.length; i++)\n\t\t{\n\t\t\tif (\n\t\t\t\tthis.sections[i].canDo('edit')\n\t\t\t\t&& !this.sections[i].isPseudo()\n\t\t\t\t&& this.sections[i].isActive()\n\t\t\t\t&& !this.sections[i].isLocationRoom()\n\t\t\t)\n\t\t\t{\n\t\t\t\tresult.push(this.sections[i]);\n\t\t\t}\n\t\t}\n\t\treturn result;\n\t}\n\n\tgetSection(id)\n\t{\n\t\treturn this.sections[this.sectionIndex[id]] || {};\n\t}\n\n\tgetDefaultSectionName()\n\t{\n\t\treturn Loc.getMessage('EC_DEFAULT_SECTION_NAME');\n\t}\n\n\tgetDefaultSectionAccess()\n\t{\n\t\treturn this.defaultSectionAccess;\n\t\t// return this.calendar.util.config.new_section_access || {};\n\t}\n\n\tsaveSection(name, color, access, params)\n\t{\n\t\treturn new Promise(resolve => {\n\t\t\tname = (Type.isString(name) && name.trim())\n\t\t\t\t? name.trim()\n\t\t\t\t: Loc.getMessage('EC_SEC_SLIDER_NEW_SECTION');\n\n\t\t\tif (params.section.id)\n\t\t\t{\n\t\t\t\t// BX.onCustomEvent(this.calendar, 'BXCalendar:onSectionChange', [\n\t\t\t\t// \tparams.section.id,\n\t\t\t\t// \t{\n\t\t\t\t// \t\tname: name,\n\t\t\t\t// \t\tcolor: color\n\t\t\t\t// \t}]);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t// BX.onCustomEvent(this.calendar, 'BXCalendar:onSectionAddBefore', [{\n\t\t\t\t// \tname: name,\n\t\t\t\t// \tcolor: color\n\t\t\t\t// }]);\n\t\t\t}\n\n\t\t\tconst isCustomization = params.section.id && params.section.isPseudo();\n\t\t\tBX.ajax.runAction('calendar.api.calendarajax.editCalendarSection', {\n\t\t\t\t\tdata: {\n\t\t\t\t\t\tanalyticsLabel: {\n\t\t\t\t\t\t\taction: params.section.id ? 'editSection' : 'newSection',\n\t\t\t\t\t\t\ttype: params.section.type || this.calendarType\n\t\t\t\t\t\t},\n\t\t\t\t\t\tid: params.section.id || 0,\n\t\t\t\t\t\tname: name,\n\t\t\t\t\t\ttype: params.section.type || this.calendarType,\n\t\t\t\t\t\townerId: params.section.ownerId || this.ownerId,\n\t\t\t\t\t\tcolor: color,\n\t\t\t\t\t\taccess: access || null,\n\t\t\t\t\t\tuserId: this.userId,\n\t\t\t\t\t\tcustomization: isCustomization ? 'Y' : 'N',\n\t\t\t\t\t\texternal_type: params?.section?.id ? params.section.getExternalType() : 'local'\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\t.then(\n\t\t\t\t\t(response) => {\n\t\t\t\t\t\tif (isCustomization)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tBX.reload();\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst sectionList = response.data.sectionList || [];\n\t\t\t\t\t\tthis.setSections(sectionList);\n\t\t\t\t\t\tthis.sortSections();\n\t\t\t\t\t\tthis.addTaskSection();\n\n\t\t\t\t\t\tUtil.getBX().Event.EventEmitter.emit(\n\t\t\t\t\t\t\t'BX.Calendar.Section:edit',\n\t\t\t\t\t\t\tnew Event.BaseEvent(\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tdata: { sectionList: sectionList }\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\t\t\t\t\t\tresolve(response.data);\n\t\t\t\t\t},\n\t\t\t\t\t(response) => {\n\t\t\t\t\t\tBX.Calendar.Util.displayError(response.errors);\n\t\t\t\t\t\tresolve(response.data);\n\t\t\t\t\t}\n\t\t\t\t);\n\n\t\t});\n\t}\n\n\tsectionIsShown(id)\n\t{\n\t\treturn !BX.util.in_array(id, this.hiddenSections);\n\t}\n\n\tgetHiddenSections()\n\t{\n\t\treturn this.hiddenSections;\n\t}\n\n\tsetHiddenSections(hiddenSections)\n\t{\n\t\tthis.hiddenSections = [];\n\t\tif (Type.isArray(hiddenSections))\n\t\t{\n\t\t\thiddenSections.forEach((id) => {\n\t\t\t\tthis.hiddenSections.push(id === 'tasks' ? id : parseInt(id));\n\t\t\t});\n\t\t}\n\t}\n\n\tsaveHiddenSections()\n\t{\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\tconst optionName = calendarContext.util.userIsOwner()\n\t\t\t? 'hidden_sections'\n\t\t\t: 'hidden_sections_' + calendarContext.util.type;\n\n\t\tBX.userOptions.save('calendar', optionName, optionName, this.hiddenSections);\n\t}\n\n\tgetSectionsInfo()\n\t{\n\t\tconst allActive = [];\n\t\tconst superposed = [];\n\t\tconst active = [];\n\t\tconst hidden = [];\n\n\t\tthis.sections.forEach((section) => {\n\t\t\tif(section.isShown() && this.calendarType === 'location' && section.type === 'location')\n\t\t\t{\n\t\t\t\tif (section.isSuperposed())\n\t\t\t\t{\n\t\t\t\t\tsuperposed.push(section.id);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tactive.push(section.id);\n\t\t\t\t}\n\t\t\t\tallActive.push(section.id);\n\t\t\t}\n\t\t\telse if (section.isShown() && this.calendarType !== 'location')\n\t\t\t{\n\t\t\t\tif (section.isSuperposed())\n\t\t\t\t{\n\t\t\t\t\tsuperposed.push(section.id);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tactive.push(section.id);\n\t\t\t\t}\n\t\t\t\tallActive.push(section.id);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\thidden.push(section.id);\n\t\t\t}\n\t\t});\n\n\t\treturn { superposed, active, hidden, allActive };\n\t}\n\n\tdeleteSectionHandler(sectionId)\n\t{\n\t\tif (this.sectionIndex[sectionId] !== undefined)\n\t\t{\n\t\t\tthis.sections = BX.util.deleteFromArray(this.sections, this.sectionIndex[sectionId]);\n\n\t\t\tthis.sectionIndex = {};\n\t\t\tfor (let i = 0; i < this.sections.length; i++)\n\t\t\t{\n\t\t\t\tthis.sectionIndex[this.sections[i].id] = i;\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic getNewEntrySectionId(calendarType = null, ownerId = null)\n\t{\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\tif (calendarContext && !calendarContext.isExternalMode())\n\t\t{\n\t\t\tcalendarType = calendarType || calendarContext.util.type;\n\t\t\tif (calendarType === 'location')\n\t\t\t{\n\t\t\t\tconst section = calendarContext.sectionManager.getDefaultSection(\n\t\t\t\t\t'user',\n\t\t\t\t\tcalendarContext.util.userId\n\t\t\t\t);\n\t\t\t\treturn parseInt(section?.id, 10);\n\t\t\t}\n\t\t\telse if (calendarContext.isCollabUser && calendarContext.util.type === 'user')\n\t\t\t{\n\t\t\t\tconst section = calendarContext.sectionManager.getSections().find(section => section.isCollab());\n\n\t\t\t\treturn parseInt(section?.id, 10);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tconst section = calendarContext.sectionManager.getDefaultSection(calendarType, ownerId);\n\t\t\t\treturn parseInt(section?.id, 10);\n\t\t\t}\n\t\t}\n\n\t\tif (SectionManager.newEntrySectionId)\n\t\t{\n\t\t\treturn SectionManager.newEntrySectionId;\n\t\t}\n\n\t\treturn null;\n\t}\n\n\tstatic setNewEntrySectionId(sectionId)\n\t{\n\t\tSectionManager.newEntrySectionId = parseInt(sectionId);\n\t}\n\n\tstatic getSectionGroupList(options = {})\n\t{\n\t\tlet\n\t\t\ttype = options.type,\n\t\t\townerId = options.ownerId,\n\t\t\tuserId = options.userId,\n\t\t\tisCollabUser = options.isCollabUser || false,\n\t\t\tisCollabContext = options.isCollabContext || false,\n\t\t\tfollowedUserList = options.trackingUsersList || Util.getFollowedUserList(userId),\n\t\t\tsectionGroups = [],\n\t\t\ttitle;\n\n\t\t// 1. Main group - depends from current view\n\t\tif (type === 'user')\n\t\t{\n\t\t\tif (userId === ownerId)\n\t\t\t{\n\t\t\t\ttitle = Loc.getMessage('EC_SEC_SLIDER_MY_CALENDARS_LIST');\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\ttitle = Loc.getMessage('EC_SEC_SLIDER_USER_CALENDARS_LIST');\n\t\t\t}\n\t\t}\n\t\telse if (type === 'group')\n\t\t{\n\t\t\tconst groupTitleMessage = isCollabUser || isCollabContext\n\t\t\t\t? 'EC_SEC_SLIDER_COLLAB_CALENDARS_LIST'\n\t\t\t\t: 'EC_SEC_SLIDER_GROUP_CALENDARS_LIST';\n\t\t\ttitle = Loc.getMessage(groupTitleMessage);\n\t\t}\n\t\telse if (type === 'location')\n\t\t{\n\t\t\ttitle = Loc.getMessage('EC_SEC_SLIDER_TYPE_LOCATION_LIST');\n\t\t}\n\t\telse if (type === 'resource')\n\t\t{\n\t\t\ttitle = Loc.getMessage('EC_SEC_SLIDER_TYPE_RESOURCE_LIST');\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttitle = Loc.getMessage('EC_SEC_SLIDER_TITLE_COMP_CAL');\n\t\t}\n\n\t\tsectionGroups.push({\n\t\t\ttitle: title,\n\t\t\ttype: type,\n\t\t\tbelongsToView: true\n\t\t});\n\n\t\tif (type !== 'user' || userId !== ownerId)\n\t\t{\n\t\t\tsectionGroups.push({\n\t\t\t\ttitle: Loc.getMessage('EC_SEC_SLIDER_MY_CALENDARS_LIST'),\n\t\t\t\ttype: 'user',\n\t\t\t\townerId: userId\n\t\t\t});\n\t\t}\n\n\t\t// 2. Company calendar\n\t\tif (type !== 'company' && type !== 'company_calendar' && type !== 'calendar_company')\n\t\t{\n\t\t\tsectionGroups.push({\n\t\t\t\ttitle: Loc.getMessage('EC_SEC_SLIDER_TITLE_COMP_CAL'),\n\t\t\t\ttype: 'company'\n\t\t\t});\n\t\t}\n\n\t\t// 3. Users calendars\n\t\tif (Type.isArray(followedUserList))\n\t\t{\n\t\t\tfollowedUserList.forEach((user) => {\n\t\t\t\tif (parseInt(user.ID) !== ownerId || type !== 'user')\n\t\t\t\t{\n\t\t\t\t\tsectionGroups.push({\n\t\t\t\t\t\ttitle: BX.util.htmlspecialchars(user.FORMATTED_NAME),\n\t\t\t\t\t\ttype: 'user',\n\t\t\t\t\t\townerId: parseInt(user.ID)\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\n\t\t// 4. Groups calendars\n\t\tsectionGroups.push({\n\t\t\ttitle: Loc.getMessage('EC_SEC_SLIDER_POPUP_MENU_ADD_GROUP'),\n\t\t\ttype: 'group'\n\t\t});\n\t\t// 4.1 Collabs calendars\n\t\tsectionGroups.push({\n\t\t\ttitle: BX.message('EC_SEC_SLIDER_POPUP_MENU_ADD_COLLAB'),\n\t\t\ttype: 'collab'\n\t\t});\n\n\t\t// 5. Resources calendars\n\t\tsectionGroups.push({\n\t\t\ttitle: Loc.getMessage('EC_SEC_SLIDER_TITLE_RESOURCE_CAL'),\n\t\t\ttype: 'resource'\n\t\t});\n\n\t\t// 6. Location calendars\n\t\tsectionGroups.push({\n\t\t\ttitle: Loc.getMessage('EC_SEC_SLIDER_TITLE_LOCATION_CAL'),\n\t\t\ttype: 'location'\n\t\t});\n\n\t\treturn sectionGroups;\n\t}\n\n\tgetSectionAccessTasks()\n\t{\n\t\treturn this.sectionAccessTasks;\n\t}\n\n\tgetDefaultSection(calendarType = null, ownerId = null)\n\t{\n\t\tlet sections = this.getSectionListForEdit();\n\n\t\tcalendarType = Type.isString(calendarType) ? calendarType : this.calendarType;\n\t\townerId = Type.isNumber(ownerId) ? ownerId : this.ownerId;\n\n\t\tlet section;\n\n\t\tif (calendarType === 'user')\n\t\t{\n\t\t\tconst defaultSectionId = this.meetSectionId;\n\t\t\tsection = sections.find((item) => {\n\t\t\t\treturn item.type === calendarType\n\t\t\t\t\t&& item.ownerId === ownerId\n\t\t\t\t\t&& item.id === defaultSectionId;\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tsections = sections.sort((section1, section2) => section1.id - section2.id);\n\t\t}\n\n\t\tif (!section)\n\t\t{\n\t\t\tsection = sections.find((item) => {\n\t\t\t\treturn item.type === calendarType\n\t\t\t\t\t&& item.ownerId === ownerId\n\t\t\t\t\t&& item.canDo('edit')\n\t\t\t});\n\t\t}\n\n\t\treturn section;\n\t}\n\n\tsetDefaultSection(sectionId)\n\t{\n\t\tconst section = this.getSection(parseInt(sectionId, 10));\n\n\t\tif (section\n\t\t\t&& section.type === this.calendarType\n\t\t\t&& section.ownerId === this.ownerId)\n\t\t{\n\t\t\tconst userSettings = Util.getUserSettings();\n\t\t\tconst key = this.calendarType + this.ownerId;\n\t\t\tif (userSettings.defaultSections[key] !== section.id)\n\t\t\t{\n\t\t\t\tuserSettings.defaultSections[key] = section.id;\n\t\t\t\tUtil.setUserSettings(userSettings);\n\n\t\t\t\tBX.ajax.runAction('calendar.api.calendarajax.updateDefaultSectionId', {\n\t\t\t\t\tdata: {\n\t\t\t\t\t\t'key': key,\n\t\t\t\t\t\t'sectionId': sectionId\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic saveDefaultSectionId(sectionId, options = {})\n\t{\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\tif (calendarContext)\n\t\t{\n\t\t\tcalendarContext.sectionManager.setDefaultSection(sectionId);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (Type.isArray(options.sections) && options.calendarType && options.ownerId)\n\t\t\t{\n\t\t\t\tconst section = options.sections.find((item) => {\n\t\t\t\t\tconst id = parseInt(item.ID || item.id, 10);\n\t\t\t\t\tconst ownerId = parseInt(item.OWNER_ID || item.ownerId, 10);\n\t\t\t\t\tconst type = item.CAL_TYPE || item.type;\n\n\t\t\t\t\treturn id === parseInt(sectionId,10)\n\t\t\t\t\t\t&& ownerId === parseInt(options.ownerId, 10)\n\t\t\t\t\t\t&& type === options.calendarType;\n\t\t\t\t});\n\n\t\t\t\tif (section)\n\t\t\t\t{\n\t\t\t\t\tconst userSettings = Util.getUserSettings();\n\t\t\t\t\tconst key = options.calendarType + options.ownerId;\n\t\t\t\t\tif (userSettings && userSettings.defaultSections[key] !== sectionId)\n\t\t\t\t\t{\n\t\t\t\t\t\tuserSettings.defaultSections[key] = sectionId;\n\t\t\t\t\t\tUtil.setUserSettings(userSettings);\n\t\t\t\t\t\tSectionManager.newEntrySectionId = sectionId;\n\n\t\t\t\t\t\tBX.ajax.runAction('calendar.api.calendarajax.updateDefaultSectionId', {\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t'key': key,\n\t\t\t\t\t\t\t\t'sectionId': sectionId\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}\n\t\t}\n\t}\n\n\tstatic getSectionExternalConnection(section, sectionExternalType): any\n\t{\n\t\tconst calendarContext = Util.getCalendarContext();\n\t\tconst linkList = section.getConnectionLinks();\n\n\t\tlet provider = undefined;\n\t\tlet connection = undefined;\n\t\tlet connectionId = linkList.length\n\t\t\t? parseInt(linkList[0].id)\n\t\t\t: parseInt(section.data.CAL_DAV_CON, 10)\n\t\t;\n\n\t\tif (connectionId && calendarContext && calendarContext.syncInterface)\n\t\t{\n\t\t\t[provider, connection] = calendarContext.syncInterface.getProviderById(connectionId);\n\n\t\t\tif (\n\t\t\t\tconnection\n\t\t\t\t&& (!linkList.length || connection.getType() === sectionExternalType)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn connection;\n\t\t\t}\n\t\t}\n\n\t\treturn null;\n\t}\n}\n"],"names":["CalendarSection","constructor","data","updateData","calendarContext","Util","getCalendarContext","getId","id","type","CAL_TYPE","ownerId","parseInt","OWNER_ID","ID","color","COLOR","name","NAME","isShown","sectionManager","sectionIsShown","show","hiddenSections","getHiddenSections","filter","sectionId","setHiddenSections","saveHiddenSections","hide","push","remove","EventAlias","getBX","Event","EventEmitter","emit","BaseEvent","BX","ajax","runAction","then","response","updateListAfterDelete","hideSyncSection","onCustomEvent","calendar","sectionStatus","hideExternalCalendarSection","getLink","LINK","canBeConnectedToOutlook","isPseudo","OUTLOOK_JS","CAL_DAV_CAL","CAL_DAV_CON","browser","IsMac","connectToOutlook","url","result","eval","canDo","action","isVirtual","includes","hasPermission","isCollabUser","PERM","isSuperposed","SUPERPOSED","indexOf","GAPI_CALENDAR_ID","EXTERNAL_TYPE","isGoogle","googleTypes","isCalDav","isIcloud","isOffice365","isArchive","isExchange","isCompanyCalendar","isGroupCalendar","hasConnection","connectionLinks","length","isLocationRoom","belongsToView","getCalendarType","getOwnerId","belongsToOwner","belongsToUser","getUserId","userId","ACTIVE","getExternalType","getConnectionLinks","Type","isArray","externalTypeIsLocal","SectionManager","EXTERNAL_TYPE_LOCAL","isPrimaryForConnection","find","connection","isPrimary","isActive","getType","getConnectionIdList","connectionIdList","connectionId","reload","section","i","sections","isCollab","CalendarTaskSection","defaultColor","belongToUser","defaultName","Loc","getMessage","edit_section","view_full","view_time","view_title","isUserTaskSection","taskSectionBelongToUser","config","setSections","setConfig","addTaskSection","sortSections","subscribeOnce","event","deleteSectionHandler","reloadDataDebounce","Runtime","debounce","reloadData","RELOAD_DELAY","rawSections","sectionIndex","forEach","sectionData","sort","a","b","isFunction","localeCompare","index","calendarType","ownerName","defaultSectionAccess","new_section_access","sectionAccessTasks","showTasks","customizationData","sectionCustomization","meetSectionId","taskSection","handlePullChanges","params","command","fields","getSections","getSuperposedSectionList","getSectionListForEdit","getSection","getDefaultSectionName","getDefaultSectionAccess","saveSection","access","Promise","resolve","isString","trim","isCustomization","analyticsLabel","customization","external_type","sectionList","Calendar","displayError","errors","util","in_array","optionName","userIsOwner","userOptions","save","getSectionsInfo","allActive","superposed","active","hidden","undefined","deleteFromArray","getNewEntrySectionId","isExternalMode","getDefaultSection","newEntrySectionId","setNewEntrySectionId","getSectionGroupList","options","isCollabContext","followedUserList","trackingUsersList","getFollowedUserList","sectionGroups","title","groupTitleMessage","user","htmlspecialchars","FORMATTED_NAME","message","getSectionAccessTasks","isNumber","defaultSectionId","item","section1","section2","setDefaultSection","userSettings","getUserSettings","key","defaultSections","setUserSettings","saveDefaultSectionId","getSectionExternalConnection","sectionExternalType","linkList","provider","syncInterface","getProviderById"],"mappings":"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"}

Youez - 2016 - github.com/yon3zu
LinuXploit