File manager - Edit - /home/c14075/dragmet-ural.ru/www/bitrix/js/calendar/sectionmanager/dist/sectionmanager.bundle.js.map
Back
{"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 (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\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}\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}","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\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\tvar i, result = [];\n\t\tfor (i = 0; i < this.sections.length; i++)\n\t\t{\n\t\t\tif (this.sections[i].isSuperposed()\n\t\t\t\t&& this.sections[i].isActive())\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\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('add')\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\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\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\ttitle = Loc.getMessage('EC_SEC_SLIDER_GROUP_CALENDARS_LIST');\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\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});\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}"],"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","PERM","isSuperposed","SUPERPOSED","indexOf","GAPI_CALENDAR_ID","EXTERNAL_TYPE","isGoogle","googleTypes","isCalDav","isIcloud","isOffice365","isArchive","isExchange","isCompanyCalendar","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","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","followedUserList","trackingUsersList","getFollowedUserList","sectionGroups","title","user","htmlspecialchars","FORMATTED_NAME","getSectionAccessTasks","isNumber","defaultSectionId","item","section1","section2","setDefaultSection","userSettings","getUserSettings","key","defaultSections","setUserSettings","saveDefaultSectionId","getSectionExternalConnection","sectionExternalType","linkList","provider","syncInterface","getProviderById"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.33 | Generation time: 0.25 |
proxy
|
phpinfo
|
Settings