Файловый менеджер - Редактировать - /var/www/axolotl/data/www/axolotls.ru/www/bitrix/js/im/controller/dist/controller.bundle.js.map
Назад
{"version":3,"file":"controller.bundle.js","sources":["../src/application.js","../src/recent.js","../src/core.js"],"sourcesContent":["/**\n * Bitrix Messenger\n * Application controller\n *\n * @package bitrix\n * @subpackage im\n * @copyright 2001-2020 Bitrix\n */\n\nimport {Timer} from 'im.lib.timer';\nimport {DialogCrmType, DialogType, RestMethod} from \"im.const\";\nimport {Utils} from \"im.lib.utils\";\nimport {Vue} from \"ui.vue\";\n\nexport class ApplicationController\n{\n\tconstructor()\n\t{\n\t\tthis.controller = null;\n\n\t\tthis.timer = new Timer();\n\n\t\tthis._prepareFilesBeforeSave = params => { return params };\n\n\t\tthis.defaultMessageLimit = 20;\n\t\tthis.requestMessageLimit = this.getDefaultMessageLimit();\n\n\t\tthis.messageLastReadId = {};\n\t\tthis.messageReadQueue = {};\n\t}\n\n\tsetCoreController(controller)\n\t{\n\t\tthis.controller = controller;\n\t}\n\n\tgetSiteId()\n\t{\n\t\treturn this.controller.getStore().state.application.common.siteId;\n\t}\n\n\tgetUserId()\n\t{\n\t\treturn this.controller.getStore().state.application.common.userId;\n\t}\n\n\tgetLanguageId()\n\t{\n\t\treturn this.controller.getStore().state.application.common.languageId;\n\t}\n\n\tgetCurrentUser()\n\t{\n\t\treturn this.controller.getStore().getters['users/get'](this.controller.getStore().state.application.common.userId, true);\n\t}\n\n\tgetChatId()\n\t{\n\t\treturn this.controller.getStore().state.application.dialog.chatId;\n\t}\n\n\tgetDialogId()\n\t{\n\t\treturn this.controller.getStore().state.application.dialog.dialogId;\n\t}\n\n\tgetDialogData(dialogId = this.getDialogId())\n\t{\n\t\tif (this.controller.getStore().state.dialogues.collection[dialogId])\n\t\t{\n\t\t\treturn this.controller.getStore().state.dialogues.collection[dialogId];\n\t\t}\n\n\t\treturn this.controller.getStore().getters['dialogues/getBlank']();\n\t}\n\n\tgetDialogCrmData(dialogId = this.getDialogId())\n\t{\n\t\tlet result = {\n\t\t\tenabled: false,\n\t\t\tentityType: DialogCrmType.none,\n\t\t\tentityId: 0\n\t\t};\n\n\t\tlet dialogData = this.getDialogData(dialogId);\n\t\tif (dialogData.type === DialogType.call)\n\t\t{\n\t\t\tif (dialogData.entityData1 && typeof dialogData.entityData1 === 'string')\n\t\t\t{\n\t\t\t\tlet [enabled, entityType, entityId] = dialogData.entityData1.split('|');\n\t\t\t\tif (enabled)\n\t\t\t\t{\n\t\t\t\t\tentityType = entityType? entityType.toString().toLowerCase(): DialogCrmType.none;\n\t\t\t\t\tresult = {enabled, entityType, entityId};\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse if (dialogData.type === DialogType.crm)\n\t\t{\n\t\t\tlet [entityType, entityId] = dialogData.entityId.split('|');\n\t\t\tentityType = entityType? entityType.toString().toLowerCase(): DialogCrmType.none;\n\t\t\tresult = {enabled: true, entityType, entityId};\n\t\t}\n\n\t\treturn result;\n\t}\n\n\tgetDialogIdByChatId(chatId)\n\t{\n\t\tif (this.getDialogId() === 'chat'+chatId)\n\t\t{\n\t\t\treturn this.getDialogId();\n\t\t}\n\n\t\tlet dialog = this.controller.getStore().getters['dialogues/getByChatId'](chatId);\n\t\tif (!dialog)\n\t\t{\n\t\t\treturn 0;\n\t\t}\n\n\t\treturn dialog.dialogId;\n\t}\n\n\tgetDiskFolderId()\n\t{\n\t\treturn this.controller.getStore().state.application.dialog.diskFolderId;\n\t}\n\n\tgetDefaultMessageLimit()\n\t{\n\t\treturn this.defaultMessageLimit;\n\t}\n\n\tgetRequestMessageLimit()\n\t{\n\t\treturn this.requestMessageLimit;\n\t}\n\n\tmuteDialog(action = null, dialogId = this.getDialogId())\n\t{\n\t\tif (Utils.dialog.isEmptyDialogId(dialogId))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tif (action === null)\n\t\t{\n\t\t\taction = !this.isDialogMuted();\n\t\t}\n\n\t\tthis.timer.start('muteDialog', dialogId, .3, (id) => {\n\t\t\tthis.controller.restClient.callMethod(RestMethod.imChatMute, {\n\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t'ACTION': action? 'Y': 'N'\n\t\t\t})\n\t\t});\n\n\t\tlet muteList = [];\n\t\tif (action)\n\t\t{\n\t\t\tmuteList = this.getDialogData().muteList;\n\t\t\tmuteList.push(this.getUserId());\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmuteList = this.getDialogData().muteList.filter(userId => userId !== this.getUserId());\n\t\t}\n\n\t\tthis.controller.getStore().dispatch('dialogues/update', {\n\t\t\tdialogId,\n\t\t\tfields: {muteList},\n\t\t});\n\n\t\treturn true;\n\t}\n\n\tisDialogMuted(dialogId = this.getDialogId())\n\t{\n\t\treturn this.getDialogData().muteList.includes(this.getUserId());\n\t}\n\n\tisUnreadMessagesLoaded()\n\t{\n\t\tlet dialog = this.controller.getStore().state.dialogues.collection[this.getDialogId()];\n\t\tif (!dialog)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tif (dialog.unreadLastId <= 0)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tlet collection = this.controller.getStore().state.messages.collection[this.getChatId()];\n\t\tif (!collection || collection.length <= 0)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tlet lastElementId = 0;\n\t\tfor (let index = collection.length-1; index >= 0; index--)\n\t\t{\n\t\t\tlet lastElement = collection[index];\n\t\t\tif (typeof lastElement.id === \"number\")\n\t\t\t{\n\t\t\t\tlastElementId = lastElement.id;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\n\t\treturn lastElementId >= dialog.unreadLastId;\n\t}\n\n\tprepareFilesBeforeSave(files)\n\t{\n\t\treturn this._prepareFilesBeforeSave(files);\n\t}\n\n\tsetPrepareFilesBeforeSaveFunction(func)\n\t{\n\t\tthis._prepareFilesBeforeSave = func.bind(this);\n\t}\n\n\tshowSmiles()\n\t{\n\t\tthis.store.dispatch('application/showSmiles');\n\t}\n\n\thideSmiles()\n\t{\n\t\tthis.store.dispatch('application/hideSmiles');\n\t}\n\n\tstartOpponentWriting(params)\n\t{\n\t\tlet {dialogId, userId, userName} = params;\n\n\t\tthis.controller.getStore().dispatch('dialogues/updateWriting', {\n\t\t\tdialogId,\n\t\t\tuserId,\n\t\t\tuserName,\n\t\t\taction : true\n\t\t});\n\n\t\tthis.timer.start('writingEnd', dialogId+'|'+userId, 35, (id, params) => {\n\t\t\tlet {dialogId, userId} = params;\n\t\t\tthis.controller.getStore().dispatch('dialogues/updateWriting', {\n\t\t\t\tdialogId,\n\t\t\t\tuserId,\n\t\t\t\taction: false\n\t\t\t});\n\t\t}, {dialogId, userId});\n\n\t\treturn true;\n\t}\n\n\tstopOpponentWriting(params = {})\n\t{\n\t\tlet {dialogId, userId, userName} = params;\n\n\t\tthis.timer.stop('writingStart', dialogId+'|'+userId, true);\n\t\tthis.timer.stop('writingEnd', dialogId+'|'+userId);\n\n\t\treturn true;\n\t}\n\n\tstartWriting(dialogId = this.getDialogId())\n\t{\n\t\tif (Utils.dialog.isEmptyDialogId(dialogId) || this.timer.has('writes', dialogId))\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.timer.start('writes', dialogId, 28);\n\t\tthis.timer.start('writesSend', dialogId, 5, (id) => {\n\t\t\tthis.controller.restClient.callMethod(RestMethod.imDialogWriting, {\n\t\t\t\t'DIALOG_ID': dialogId\n\t\t\t}).catch(() => {\n\t\t\t\tthis.timer.stop('writes', dialogId);\n\t\t\t});\n\t\t});\n\t}\n\n\tstopWriting(dialogId = this.getDialogId())\n\t{\n\t\tthis.timer.stop('writes', dialogId, true);\n\t\tthis.timer.stop('writesSend', dialogId, true);\n\t}\n\n\tjoinParentChat(messageId, dialogId)\n\t{\n\t\treturn new Promise((resolve, reject) =>\n\t\t{\n\t\t\tif (!messageId || !dialogId)\n\t\t\t{\n\t\t\t\treturn reject();\n\t\t\t}\n\n\t\t\tif (typeof this.tempJoinChat === 'undefined')\n\t\t\t{\n\t\t\t\tthis.tempJoinChat = {};\n\t\t\t}\n\t\t\telse if (this.tempJoinChat['wait'])\n\t\t\t{\n\t\t\t\treturn reject();\n\t\t\t}\n\n\t\t\tthis.tempJoinChat['wait'] = true;\n\n\t\t\tthis.controller.restClient.callMethod(RestMethod.imChatParentJoin, {\n\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t'MESSAGE_ID': messageId\n\t\t\t}).then(() => {\n\t\t\t\tthis.tempJoinChat['wait'] = false;\n\t\t\t\tthis.tempJoinChat[dialogId] = true;\n\t\t\t\treturn resolve(dialogId);\n\t\t\t}).catch(() => {\n\t\t\t\tthis.tempJoinChat['wait'] = false;\n\t\t\t\treturn reject();\n\t\t\t});\n\t\t});\n\n\t};\n\n\tsetTextareaMessage(params)\n\t{\n\t\tlet {\n\t\t\tmessage = '',\n\t\t\tdialogId = this.getDialogId()\n\t\t} = params;\n\n\t\tthis.controller.getStore().dispatch('dialogues/update', {\n\t\t\tdialogId,\n\t\t\tfields: {\n\t\t\t\ttextareaMessage: message\n\t\t\t},\n\t\t});\n\t}\n\n\tsetSendingMessageFlag(messageId)\n\t{\n\t\tthis.controller.getStore().dispatch('messages/actionStart', {\n\t\t\tid: messageId,\n\t\t\tchatId: this.getChatId()\n\t\t});\n\t}\n\n\treactMessage(messageId, type = 'like', action = 'auto')\n\t{\n\t\tthis.controller.restClient.callMethod(RestMethod.imMessageLike, {\n\t\t\t'MESSAGE_ID': messageId,\n\t\t\t'ACTION': action === 'auto'? 'auto': (action === 'set'? 'plus': 'minus')\n\t\t});\n\t}\n\n\treadMessage(messageId = null, force = false, skipAjax = false)\n\t{\n\t\tlet chatId = this.getChatId();\n\n\t\tif (typeof this.messageLastReadId[chatId] === 'undefined')\n\t\t{\n\t\t\tthis.messageLastReadId[chatId] = null;\n\t\t}\n\t\tif (typeof this.messageReadQueue[chatId] === 'undefined')\n\t\t{\n\t\t\tthis.messageReadQueue[chatId] = [];\n\t\t}\n\n\t\tif (messageId)\n\t\t{\n\t\t\tthis.messageReadQueue[chatId].push(parseInt(messageId));\n\t\t}\n\n\t\tthis.timer.stop('readMessage', chatId, true);\n\t\tthis.timer.stop('readMessageServer', chatId, true);\n\n\t\tif (force)\n\t\t{\n\t\t\treturn this.readMessageExecute(chatId, skipAjax);\n\t\t}\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tthis.timer.start('readMessage', chatId, .1, (chatId, params) => this.readMessageExecute(chatId, skipAjax).then((result) => resolve(result)));\n\t\t});\n\t}\n\n\treadMessageExecute(chatId, skipAjax = false)\n\t{\n\t\treturn new Promise((resolve, reject) =>\n\t\t{\n\t\t\tif (this.messageReadQueue[chatId])\n\t\t\t{\n\t\t\t\tthis.messageReadQueue[chatId] = this.messageReadQueue[chatId].filter(elementId => {\n\t\t\t\t\tif (!this.messageLastReadId[chatId])\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.messageLastReadId[chatId] = elementId;\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.messageLastReadId[chatId] < elementId)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.messageLastReadId[chatId] = elementId;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tlet dialogId = this.getDialogIdByChatId(chatId);\n\t\t\tlet lastId = this.messageLastReadId[chatId] || 0;\n\t\t\tif (lastId <= 0)\n\t\t\t{\n\t\t\t\tresolve({dialogId, lastId: 0});\n\t\t\t\treturn true;\n\t\t\t}\n\n\t\t\tthis.controller.getStore().dispatch('messages/readMessages', {\n\t\t\t\tchatId: chatId,\n\t\t\t\treadId: lastId\n\t\t\t}).then(result =>\n\t\t\t{\n\t\t\t\tthis.controller.getStore().dispatch('dialogues/decreaseCounter', {\n\t\t\t\t\tdialogId,\n\t\t\t\t\tcount: result.count\n\t\t\t\t});\n\n\t\t\t\tif (this.getChatId() === chatId && this.controller.getStore().getters['dialogues/canSaveChat'])\n\t\t\t\t{\n\t\t\t\t\tlet dialog = this.controller.getStore().getters['dialogues/get'](dialogId);\n\t\t\t\t\tif (dialog.counter <= 0)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.controller.getStore().commit('application/clearDialogExtraCount');\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tif (skipAjax)\n\t\t\t\t{\n\t\t\t\t\tresolve({dialogId, lastId});\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.timer.start('readMessageServer', chatId, .5, () => {\n\t\t\t\t\t\tthis.controller.restClient.callMethod(RestMethod.imDialogRead, {\n\t\t\t\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t\t\t\t'MESSAGE_ID': lastId\n\t\t\t\t\t\t}).then(() => resolve({dialogId, lastId})).catch(() => resolve({dialogId, lastId}));\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t}).catch(() => {\n\t\t\t\tresolve();\n\t\t\t});\n\t\t});\n\t}\n\n\tunreadMessage(messageId = null, skipAjax = false)\n\t{\n\t\tlet chatId = this.getChatId();\n\n\t\tif (typeof this.messageLastReadId[chatId] === 'undefined')\n\t\t{\n\t\t\tthis.messageLastReadId[chatId] = null;\n\t\t}\n\t\tif (typeof this.messageReadQueue[chatId] === 'undefined')\n\t\t{\n\t\t\tthis.messageReadQueue[chatId] = [];\n\t\t}\n\n\t\tif (messageId)\n\t\t{\n\t\t\tthis.messageReadQueue[chatId] = this.messageReadQueue[chatId].filter(id => id < messageId);\n\t\t}\n\n\t\tthis.timer.stop('readMessage', chatId, true);\n\t\tthis.timer.stop('readMessageServer', chatId, true);\n\n\t\tthis.messageLastReadId[chatId] = messageId;\n\n\t\tthis.controller.getStore().dispatch('messages/unreadMessages', {\n\t\t\tchatId: chatId,\n\t\t\tunreadId: this.messageLastReadId[chatId]\n\t\t}).then(result => {\n\n\t\t\tlet dialogId = this.getDialogIdByChatId(chatId);\n\n\t\t\tthis.controller.getStore().dispatch('dialogues/update', {\n\t\t\t\tdialogId,\n\t\t\t\tfields: {\n\t\t\t\t\tunreadId: messageId\n\t\t\t\t},\n\t\t\t});\n\n\t\t\tthis.controller.getStore().dispatch('dialogues/increaseCounter', {\n\t\t\t\tdialogId,\n\t\t\t\tcount: result.count\n\t\t\t});\n\n\t\t\tif (!skipAjax)\n\t\t\t{\n\t\t\t\tthis.controller.restClient.callMethod(RestMethod.imDialogUnread, {\n\t\t\t\t\t'DIALOG_ID': dialogId,\n\t\t\t\t\t'MESSAGE_ID': this.messageLastReadId[chatId]\n\t\t\t\t});\n\t\t\t}\n\n\t\t}).catch(() => {});\n\t}\n\n\tshareMessage(messageId, type, date = null)\n\t{\n\t\tthis.controller.restClient.callMethod(RestMethod.imMessageShare, {\n\t\t\t'DIALOG_ID': this.getDialogId(),\n\t\t\t'MESSAGE_ID': messageId,\n\t\t\t'TYPE': type,\n\t\t});\n\n\t\treturn true;\n\t}\n\n\temit(eventName, ...args)\n\t{\n\t\tVue.event.$emit(eventName, ...args)\n\t}\n\n\tlisten(event, callback)\n\t{\n\t\tVue.event.$on(event, callback);\n\t}\n}","/**\n * Bitrix Messenger\n * Recent list controller\n *\n * @package bitrix\n * @subpackage im\n * @copyright 2001-2020 Bitrix\n */\n\nimport { RestMethod, RestMethodHandler } from \"im.const\";\n\nexport class RecentController\n{\n\tconstructor()\n\t{\n\t\tthis.paginationCount = 50;\n\t\tthis.loadingMore = false;\n\t\tthis.hasMoreToLoad = true;\n\t\tthis.placeholderCount = 0;\n\t\tthis.lastMessageDate = null;\n\t}\n\n\tsetCoreController(controller)\n\t{\n\t\tthis.controller = controller;\n\t}\n\n\tdrawPlaceholders()\n\t{\n\t\tlet placeholders = this.generatePlaceholders(this.paginationCount);\n\t\tthis.controller.getStore().dispatch('recent/set', { general: placeholders })\n\t}\n\n\tgetRecentData()\n\t{\n\t\tlet queryParams = {\n\t\t\t'SKIP_OPENLINES': 'Y',\n\t\t\t'LIMIT': this.paginationCount\n\t\t};\n\n\t\tthis.controller.restClient.callMethod(RestMethod.imRecentList, queryParams, null, null).then(result => {\n\t\t\tthis.lastMessageDate = this.getLastMessageDate(result.data().items);\n\n\t\t\tif (result.data().items.length !== this.paginationCount)\n\t\t\t{\n\t\t\t\tthis.hasMoreToLoad = false;\n\t\t\t}\n\n\t\t\tthis.controller.getStore().dispatch('recent/clearPlaceholders');\n\t\t\tthis.controller.executeRestAnswer(RestMethodHandler.imRecentList, result);\n\t\t})\n\t}\n\n\tloadMore()\n\t{\n\t\tif (\n\t\t\t!this.loadingMore &&\n\t\t\tthis.hasMoreToLoad\n\t\t)\n\t\t{\n\t\t\tthis.loadingMore = true;\n\t\t\tlet firstMessageToUpdate = this.placeholderCount;\n\t\t\tlet placeholders = this.generatePlaceholders(this.paginationCount);\n\n\t\t\tthis.controller.getStore().dispatch('recent/set', { general: placeholders })\n\t\t\t\t.then(() => {\n\t\t\t\t\tlet queryParams = {\n\t\t\t\t\t\t'SKIP_OPENLINES': 'Y',\n\t\t\t\t\t\t'LIMIT': this.paginationCount,\n\t\t\t\t\t\t'LAST_MESSAGE_UPDATE': this.lastMessageDate\n\t\t\t\t\t};\n\n\t\t\t\t\tthis.controller.restClient.callMethod(RestMethod.imRecentList, queryParams, null, null)\n\t\t\t\t\t\t.then(result => {\n\t\t\t\t\t\t\tlet items = result.data().items;\n\n\t\t\t\t\t\t\tif (!items || items.length === 0)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis.controller.getStore().dispatch('recent/clearPlaceholders');\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tif (items.length !== this.paginationCount)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis.hasMoreToLoad = false;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tthis.lastMessageDate = this.getLastMessageDate(items);\n\t\t\t\t\t\t\tlet data = this.prepareDataForModels(items);\n\n\t\t\t\t\t\t\tthis.controller.getStore().dispatch('users/set', data.users)\n\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\tthis.controller.getStore().dispatch('dialogues/set', data.dialogues)\n\t\t\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\t\t\tthis.controller.getStore().dispatch('recent/updatePlaceholders',\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\titems: data.recent,\n\t\t\t\t\t\t\t\t\t\t\t\t\tfirstMessage: firstMessageToUpdate\n\t\t\t\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t\t\t\t.then(() => {\n\t\t\t\t\t\t\t\t\t\t\t\t\tthis.loadingMore = false;\n\n\t\t\t\t\t\t\t\t\t\t\t\t\tif (!this.hasMoreToLoad)\n\t\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tthis.controller.getStore().dispatch('recent/clearPlaceholders');\n\t\t\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t});\n\t\t}\n\t}\n\n\tgeneratePlaceholders(amount)\n\t{\n\t\tlet placeholders = [];\n\n\t\tfor (let i = 0; i < amount; i++)\n\t\t{\n\t\t\tplaceholders.push({\n\t\t\t\tid: 'placeholder' + this.placeholderCount,\n\t\t\t\ttemplateId: 'placeholder' + this.placeholderCount,\n\t\t\t\ttemplate: 'placeholder',\n\t\t\t\tsectionCode: 'general'\n\t\t\t});\n\t\t\tthis.placeholderCount++;\n\t\t}\n\n\t\treturn placeholders;\n\t}\n\n\tgetLastMessageDate(collection)\n\t{\n\t\treturn collection.slice(-1)[0].date_update;\n\t}\n\n\topenOldDialog(event)\n\t{\n\t\tif (event.id !== 'notify')\n\t\t{\n\t\t\tBXIM.openMessenger(event.id);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tBXIM.openNotify();\n\t\t}\n\t}\n\n\topenOldContextMenu(event)\n\t{\n\t\tevent.$event.preventDefault();\n\t\tlet recentItem = this.controller.getStore().getters['recent/get'](event.id);\n\n\t\tlet params = {\n\t\t\tuserId: event.id,\n\t\t\tuserIsChat: typeof event.id === 'string',\n\t\t\tdialogIsPinned: recentItem.element.pinned\n\t\t};\n\t\tBXIM.messenger.openPopupMenu(event.$event.target, 'contactList', undefined, params);\n\t}\n\n\tprepareDataForModels(items)\n\t{\n\t\tlet result = {\n\t\t\tusers: [],\n\t\t\tdialogues: [],\n\t\t\trecent: []\n\t\t};\n\n\t\titems.forEach(item => {\n\t\t\tlet userId = 0;\n\t\t\tlet chatId = 0;\n\n\t\t\tif (item.user && item.user.id > 0)\n\t\t\t{\n\t\t\t\tuserId = item.user.id;\n\t\t\t\tresult.users.push(item.user);\n\t\t\t}\n\t\t\tif (item.chat)\n\t\t\t{\n\t\t\t\tchatId = item.chat.id;\n\t\t\t\tresult.dialogues.push(Object.assign(item.chat, {dialogId: item.id}));\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tresult.dialogues.push(Object.assign({}, {dialogId: item.id}));\n\t\t\t}\n\t\t\tresult.recent.push({\n\t\t\t\t...item,\n\t\t\t\tavatar: item.avatar.url,\n\t\t\t\tcolor: item.avatar.color,\n\t\t\t\tuserId: userId,\n\t\t\t\tchatId: chatId\n\t\t\t});\n\t\t});\n\n\t\treturn result;\n\t}\n}","/**\n * Bitrix im dialog mobile\n * Dialog runtime class\n *\n * @package bitrix\n * @subpackage mobile\n * @copyright 2001-2019 Bitrix\n */\n\n// main\nimport \"promise\";\n\n// ui\nimport {Vue} from \"ui.vue\";\nimport {VuexBuilder} from \"ui.vue.vuex\";\n\n// messenger files\nimport {ApplicationModel, MessagesModel, DialoguesModel, UsersModel, FilesModel, RecentModel} from 'im.model';\nimport {DeviceType} from 'im.const';\nimport {Utils} from \"im.lib.utils\";\nimport {ImPullCommandHandler} from \"im.provider.pull\";\nimport {CoreRestHandler} from \"im.provider.rest\";\n\nimport {ApplicationController} from \"./application\";\nimport {RecentController} from \"./recent\";\nimport {Logger} from \"im.lib.logger\";\n\n// TODO change BX.Promise, BX.Main.Date to IMPORT\n\nexport class Controller\n{\n\t/* region 01. Initialize and store data */\n\n\tconstructor(params = {})\n\t{\n\t\tthis.inited = false;\n\t\tthis.initPromise = new BX.Promise;\n\n\t\tthis.offline = false;\n\n\t\tthis.restAnswerHandler = [];\n\t\tthis.vuexAdditionalModel = [];\n\n\t\tthis.store = null;\n\t\tthis.storeBuilder = null;\n\n\t\tthis.prepareConstructorParams(params);\n\n\t\tthis.initController()\n\t\t\t.then(() => this.initLocalStorage())\n\t\t\t.then(() => this.initStorage())\n\t\t\t.then(() => this.initRestClient())\n\t\t\t.then(() => this.initPullClient())\n\t\t\t.then(() => this.initEnvironment())\n\t\t\t.then(() => this.initComponent())\n\t\t\t.then(() => this.initComplete())\n\t\t;\n\t}\n\n\tprepareConstructorParams(params)\n\t{\n\t\tif (typeof params.localize !== 'undefined')\n\t\t{\n\t\t\tthis.localize = params.localize;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.localize = {...BX.message};\n\t\t}\n\n\t\tif (typeof params.host !== 'undefined')\n\t\t{\n\t\t\tthis.host = params.host;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.host = location.origin;\n\t\t}\n\n\t\tif (typeof params.userId !== 'undefined')\n\t\t{\n\t\t\tthis.userId = params.userId? parseInt(params.userId): 0;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tlet userId = this.getLocalize('USER_ID');\n\t\t\tthis.userId = userId? parseInt(userId): 0;\n\t\t}\n\n\t\tif (typeof params.siteId !== 'undefined')\n\t\t{\n\t\t\tthis.siteId = params.siteId? params.userId: 's1';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.siteId = this.getLocalize('SITE_ID') || 's1';\n\t\t}\n\n\t\tif (typeof params.siteDir !== 'undefined')\n\t\t{\n\t\t\tthis.siteDir = params.siteDir? params.siteDir: 's1';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.siteDir = this.getLocalize('SITE_DIR') || 's1';\n\t\t}\n\n\t\tif (typeof params.languageId !== 'undefined')\n\t\t{\n\t\t\tthis.languageId = params.languageId? params.languageId: 'en';\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.languageId = this.getLocalize('LANGUAGE_ID') || 'en';\n\t\t}\n\n\t\tthis.pull = BX.PullClient;\n\t\tthis.pullClient = BX.PULL;\n\n\t\tif (typeof params.pull !== 'undefined')\n\t\t{\n\t\t\tif (typeof params.pull.instance !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.pull = params.pull.instance;\n\t\t\t}\n\t\t\tif (typeof params.pull.client !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.pullClient = params.pull.client;\n\t\t\t}\n\t\t}\n\n\n\t\tthis.rest = BX.RestClient;\n\t\tthis.restClient = BX.rest;\n\n\t\tif (typeof params.rest !== 'undefined')\n\t\t{\n\t\t\tif (typeof params.rest.instance !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.rest = params.rest.instance;\n\t\t\t}\n\t\t\tif (typeof params.rest.client !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.restClient = params.rest.client;\n\t\t\t}\n\t\t}\n\n\n\t\tthis.vuexBuilder = {\n\t\t\tdatabase: false,\n\t\t\tdatabaseName: 'desktop/im',\n\t\t\tdatabaseType: VuexBuilder.DatabaseType.indexedDb\n\t\t};\n\n\t\tif (typeof params.vuexBuilder !== 'undefined')\n\t\t{\n\t\t\tif (typeof params.vuexBuilder.database !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.vuexBuilder.database = params.vuexBuilder.database;\n\t\t\t}\n\t\t\tif (typeof params.vuexBuilder.databaseName !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.vuexBuilder.databaseName = params.vuexBuilder.databaseName;\n\t\t\t}\n\t\t\tif (typeof params.vuexBuilder.databaseType !== 'undefined')\n\t\t\t{\n\t\t\t\tthis.vuexBuilder.databaseType = params.vuexBuilder.databaseType;\n\t\t\t}\n\t\t\tif (typeof params.vuexBuilder.models !== 'undefined')\n\t\t\t{\n\t\t\t\tparams.vuexBuilder.models.forEach(model => {\n\t\t\t\t\tthis.addVuexModel(model);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tinitConstructorParams()\n\t{\n\t\treturn this.paramsPromise.then(params => {\n\t\t\tthis.prepareConstructorParams(\n\t\t\t\tthis.paramsCallback(params)\n\t\t\t);\n\t\t\treturn new Promise((resolve, reject) => resolve());\n\t\t});\n\t}\n\n\tinitController()\n\t{\n\t\tthis.application = new ApplicationController();\n\t\tthis.application.setCoreController(this);\n\n\t\tthis.recent = new RecentController();\n\t\tthis.recent.setCoreController(this);\n\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitLocalStorage()\n\t{\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitStorage()\n\t{\n\t\tlet applicationVariables = {\n\t\t\tcommon: {\n\t\t\t\thost: this.getHost(),\n\t\t\t\tuserId: this.getUserId(),\n\t\t\t\tsiteId: this.getSiteId(),\n\t\t\t\tlanguageId: this.getLanguageId(),\n\t\t\t},\n\t\t\tdialog: {\n\t\t\t\tmessageLimit: this.application.getDefaultMessageLimit(),\n\t\t\t\tenableReadMessages: false, // TODO: remove\n\t\t\t},\n\t\t\tdevice: {\n\t\t\t\ttype: Utils.device.isMobile()? DeviceType.mobile: DeviceType.desktop,\n\t\t\t\torientation: Utils.device.getOrientation(),\n\t\t\t},\n\t\t};\n\n\t\tlet builder = new VuexBuilder()\n\t\t\t.addModel(ApplicationModel.create().useDatabase(false).setVariables(applicationVariables))\n\t\t\t.addModel(MessagesModel.create().useDatabase(this.vuexBuilder.database).setVariables({host: this.getHost()}))\n\t\t\t.addModel(DialoguesModel.create().useDatabase(this.vuexBuilder.database).setVariables({host: this.getHost()}))\n\t\t\t.addModel(FilesModel.create().useDatabase(this.vuexBuilder.database).setVariables({host: this.getHost(), default: {name: 'File is deleted'}}))\n\t\t\t.addModel(UsersModel.create().useDatabase(this.vuexBuilder.database).setVariables({host: this.getHost(), default: {name: 'Anonymous'}}))\n\t\t\t.addModel(RecentModel.create().useDatabase(false).setVariables({host: this.getHost()}))\n\t\t;\n\n\t\tthis.vuexAdditionalModel.forEach(model => {\n\t\t\tbuilder.addModel(model);\n\t\t});\n\n\t\tbuilder.setDatabaseConfig({\n\t\t\tname: this.vuexBuilder.databaseName,\n\t\t\ttype: this.vuexBuilder.databaseType,\n\t\t\tsiteId: this.getSiteId(),\n\t\t\tuserId: this.getUserId(),\n\t\t});\n\n\t\treturn builder.build().then(result => {\n\t\t\tthis.store = result.store;\n\t\t\tthis.storeBuilder = result.builder;\n\t\t\treturn new Promise((resolve, reject) => resolve());\n\t\t})\n\t}\n\n\tinitRestClient(result)\n\t{\n\t\tthis.addRestAnswerHandler(\n\t\t\tCoreRestHandler.create({\n\t\t\t\tstore: this.store,\n\t\t\t\tcontroller: this,\n\t\t\t})\n\t\t);\n\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitPullClient()\n\t{\n\t\tif (!this.pullClient)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.pullClient.subscribe(\n\t\t\tthis.pullCommandHandler = new ImPullCommandHandler({\n\t\t\t\tstore: this.store,\n\t\t\t\tcontroller: this,\n\t\t\t})\n\t\t);\n\n\t\tthis.pullClient.subscribe({\n\t\t\ttype: this.pull.SubscriptionType.Status,\n\t\t\tcallback: this.eventStatusInteraction.bind(this)\n\t\t});\n\n\t\tthis.pullClient.subscribe({\n\t\t\ttype: this.pull.SubscriptionType.Online,\n\t\t\tcallback: this.eventOnlineInteraction.bind(this)\n\t\t});\n\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitEnvironment(result)\n\t{\n\t\twindow.addEventListener('orientationchange', () =>\n\t\t{\n\t\t\tif (!this.store)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.store.commit('application/set', {device: {\n\t\t\t\torientation: Utils.device.getOrientation()\n\t\t\t}});\n\n\t\t\tif (\n\t\t\t\tthis.store.state.application.device.type === DeviceType.mobile\n\t\t\t\t&& this.store.state.application.device.orientation === DeviceOrientation.horizontal\n\t\t\t)\n\t\t\t{\n\t\t\t\tdocument.activeElement.blur();\n\t\t\t}\n\t\t});\n\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitComponent()\n\t{\n\t\treturn new Promise((resolve, reject) => resolve());\n\t}\n\n\tinitComplete()\n\t{\n\t\tthis.inited = true;\n\t\tthis.initPromise.resolve(this);\n\t}\n\n/* endregion 01. Initialize and store data */\n\n/* region 02. Push & Pull */\n\n\teventStatusInteraction(data)\n\t{\n\t\tif (data.status === this.pull.PullStatus.Online)\n\t\t{\n\t\t\tthis.offline = false;\n\n\t\t\t//this.pullCommandHandler.option.skip = true;\n\t\t\t// this.getDialogUnread().then(() => {\n\t\t\t// \tthis.pullCommandHandler.option.skip = false;\n\t\t\t// \tthis.processSendMessages();\n\t\t\t// \tthis.emit(EventType.dialog.sendReadMessages);\n\t\t\t// }).catch(() => {\n\t\t\t// \tthis.pullCommandHandler.option.skip = false;\n\t\t\t// \tthis.processSendMessages();\n\t\t\t// });\n\t\t}\n\t\telse if (data.status === this.pull.PullStatus.Offline)\n\t\t{\n\t\t\tthis.offline = true;\n\t\t}\n\t}\n\n\teventOnlineInteraction(data)\n\t{\n\t\tif (data.command === 'list' || data.command === 'userStatus')\n\t\t{\n\t\t\tfor (let userId in data.params.users)\n\t\t\t{\n\t\t\t\tif (!data.params.users.hasOwnProperty(userId))\n\t\t\t\t{\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tthis.store.dispatch('users/update', {\n\t\t\t\t\tid: data.params.users[userId].id,\n\t\t\t\t\tfields: data.params.users[userId]\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\n/* endregion 02. Push & Pull */\n\n/* region 03. Rest */\n\n\texecuteRestAnswer(command, result, extra)\n\t{\n\t\tLogger.warn('Core.controller.executeRestAnswer', command, result, extra);\n\n\t\tthis.restAnswerHandler.forEach(handler => {\n\t\t\thandler.execute(command, result, extra);\n\t\t});\n\t}\n\n/* endregion 03. Rest */\n\n/* region 04. Template engine */\n\n\tcreateVue(application, config = {})\n\t{\n\t\tconst controller = this;\n\t\tconst restClient = this.restClient;\n\t\tconst pullClient = this.pullClient || null;\n\n\t\tlet beforeCreateFunction = () => {};\n\t\tif (config.beforeCreate)\n\t\t{\n\t\t\tbeforeCreateFunction = config.beforeCreate;\n\t\t}\n\n\t\tlet destroyedFunction = () => {};\n\t\tif (config.destroyed)\n\t\t{\n\t\t\tdestroyedFunction = config.destroyed;\n\t\t}\n\n\t\tlet initConfig = {\n\t\t\tstore: this.store,\n\t\t\tbeforeCreate()\n\t\t\t{\n\t\t\t\tthis.$bitrixApplication = application;\n\t\t\t\tthis.$bitrixController = controller;\n\t\t\t\tthis.$bitrixRestClient = restClient;\n\t\t\t\tthis.$bitrixPullClient = pullClient;\n\t\t\t\tthis.$bitrixMessages = controller.localize;\n\n\t\t\t\tbeforeCreateFunction.bind(this)();\n\t\t\t},\n\t\t\tdestroyed()\n\t\t\t{\n\t\t\t\tthis.$bitrixApplication = null;\n\t\t\t\tthis.$bitrixController = null;\n\t\t\t\tthis.$bitrixRestClient = null;\n\t\t\t\tthis.$bitrixPullClient = null;\n\t\t\t\tthis.$bitrixMessages = null;\n\n\t\t\t\tdestroyedFunction.bind(this)();\n\t\t\t}\n\t\t};\n\n\t\tif (config.el)\n\t\t{\n\t\t\tinitConfig.el = config.el;\n\t\t}\n\n\t\tif (config.template)\n\t\t{\n\t\t\tinitConfig.template = config.template;\n\t\t}\n\n\t\tif (config.computed)\n\t\t{\n\t\t\tinitConfig.computed = config.computed;\n\t\t}\n\n\t\tif (config.created)\n\t\t{\n\t\t\tinitConfig.created = config.created;\n\t\t}\n\n\t\tif (config.data)\n\t\t{\n\t\t\tinitConfig.data = config.data;\n\t\t}\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tinitConfig.created = function() { resolve(this); };\n\t\t\tVue.create(initConfig);\n\t\t});\n\t}\n\n/* endregion 04. Template engine */\n\n/* region 05. Core methods */\n\tgetHost()\n\t{\n\t\treturn this.host;\n\t}\n\n\tgetUserId()\n\t{\n\t\treturn this.userId;\n\t}\n\n\tgetSiteId()\n\t{\n\t\treturn this.siteId;\n\t}\n\n\tgetLanguageId()\n\t{\n\t\treturn this.languageId;\n\t}\n\n\tgetStore()\n\t{\n\t\treturn this.store;\n\t}\n\n\tgetStoreBuilder()\n\t{\n\t\treturn this.storeBuilder;\n\t}\n\n\taddRestAnswerHandler(handler)\n\t{\n\t\tthis.restAnswerHandler.push(handler);\n\t}\n\n\taddVuexModel(model)\n\t{\n\t\tthis.vuexAdditionalModel.push(model);\n\t}\n\n\tisOnline()\n\t{\n\t\treturn !this.offline;\n\t}\n\n\tready()\n\t{\n\t\tif (this.inited)\n\t\t{\n\t\t\tlet promise = new BX.Promise;\n\t\t\tpromise.resolve(this);\n\n\t\t\treturn promise;\n\t\t}\n\n\t\treturn this.initPromise;\n\t}\n\n/* endregion 05. Methods */\n\n/* region 06. Interaction and utils */\n\n\tsetError(code = '', description = '')\n\t{\n\t\tLogger.error(`Messenger.Application.error: ${code} (${description})`);\n\n\t\tlet localizeDescription = '';\n\t\tif (code.endsWith('LOCALIZED'))\n\t\t{\n\t\t\tlocalizeDescription = description;\n\t\t}\n\n\t\tthis.store.commit('application/set', {error: {\n\t\t\tactive: true,\n\t\t\tcode,\n\t\t\tdescription: localizeDescription\n\t\t}});\n\t}\n\n\tclearError()\n\t{\n\t\tthis.store.commit('application/set', {error: {\n\t\t\tactive: false,\n\t\t\tcode: '',\n\t\t\tdescription: ''}\n\t\t});\n\t}\n\n\taddLocalize(phrases)\n\t{\n\t\tif (typeof phrases !== \"object\" || !phrases)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tfor (let name in phrases)\n\t\t{\n\t\t\tif (phrases.hasOwnProperty(name))\n\t\t\t{\n\t\t\t\tthis.localize[name] = phrases[name];\n\t\t\t}\n\t\t}\n\n\t\treturn true;\n\t}\n\n\tgetLocalize(name)\n\t{\n\t\tlet phrase = '';\n\t\tif (typeof name === 'undefined')\n\t\t{\n\t\t\treturn this.localize;\n\t\t}\n\t\telse if (typeof this.localize[name.toString()] === 'undefined')\n\t\t{\n\t\t\tLogger.warn(`Controller.Core.getLocalize: message with code '${name.toString()}' is undefined.`)\n\t\t\tLogger.trace();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tphrase = this.localize[name];\n\t\t}\n\n\t\treturn phrase;\n\t}\n\n/* endregion 06. Interaction and utils */\n}\n"],"names":["ApplicationController","controller","timer","Timer","_prepareFilesBeforeSave","params","defaultMessageLimit","requestMessageLimit","getDefaultMessageLimit","messageLastReadId","messageReadQueue","getStore","state","application","common","siteId","userId","languageId","getters","dialog","chatId","dialogId","getDialogId","dialogues","collection","result","enabled","entityType","DialogCrmType","none","entityId","dialogData","getDialogData","type","DialogType","call","entityData1","split","toString","toLowerCase","crm","diskFolderId","action","Utils","isEmptyDialogId","isDialogMuted","start","id","restClient","callMethod","RestMethod","imChatMute","muteList","push","getUserId","filter","dispatch","fields","includes","unreadLastId","messages","getChatId","length","lastElementId","index","lastElement","files","func","bind","store","userName","stop","has","imDialogWriting","catch","messageId","Promise","resolve","reject","tempJoinChat","imChatParentJoin","then","message","textareaMessage","imMessageLike","force","skipAjax","parseInt","readMessageExecute","elementId","getDialogIdByChatId","lastId","readId","count","counter","commit","imDialogRead","unreadId","imDialogUnread","imMessageShare","eventName","args","Vue","event","$emit","callback","$on","RecentController","paginationCount","loadingMore","hasMoreToLoad","placeholderCount","lastMessageDate","placeholders","generatePlaceholders","general","queryParams","imRecentList","getLastMessageDate","data","items","executeRestAnswer","RestMethodHandler","firstMessageToUpdate","prepareDataForModels","users","recent","firstMessage","amount","i","templateId","template","sectionCode","slice","date_update","BXIM","openMessenger","openNotify","$event","preventDefault","recentItem","userIsChat","dialogIsPinned","element","pinned","messenger","openPopupMenu","target","undefined","forEach","item","user","chat","Object","assign","avatar","url","color","Controller","inited","initPromise","BX","offline","restAnswerHandler","vuexAdditionalModel","storeBuilder","prepareConstructorParams","initController","initLocalStorage","initStorage","initRestClient","initPullClient","initEnvironment","initComponent","initComplete","localize","host","location","origin","getLocalize","siteDir","pull","PullClient","pullClient","PULL","instance","client","rest","RestClient","vuexBuilder","database","databaseName","databaseType","VuexBuilder","DatabaseType","indexedDb","models","model","addVuexModel","paramsPromise","paramsCallback","setCoreController","applicationVariables","getHost","getSiteId","getLanguageId","messageLimit","enableReadMessages","device","isMobile","DeviceType","mobile","desktop","orientation","getOrientation","builder","addModel","ApplicationModel","create","useDatabase","setVariables","MessagesModel","DialoguesModel","FilesModel","default","name","UsersModel","RecentModel","setDatabaseConfig","build","addRestAnswerHandler","CoreRestHandler","subscribe","pullCommandHandler","ImPullCommandHandler","SubscriptionType","Status","eventStatusInteraction","Online","eventOnlineInteraction","window","addEventListener","DeviceOrientation","horizontal","document","activeElement","blur","status","PullStatus","Offline","command","hasOwnProperty","extra","Logger","warn","handler","execute","config","beforeCreateFunction","beforeCreate","destroyedFunction","destroyed","initConfig","$bitrixApplication","$bitrixController","$bitrixRestClient","$bitrixPullClient","$bitrixMessages","el","computed","created","promise","code","description","error","localizeDescription","endsWith","active","phrases","phrase","trace"],"mappings":"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"}
| ver. 1.4 |
Github
|
.
| PHP 7.4.8 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка