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/rospirotorg.ru/bitrix/js/socialnetwork/livefeed/dist/ |
Upload File : |
{"version":3,"file":"livefeed.bundle.js","sources":["../src/utils.js","../src/pinned.js","../src/taskcreator.js","../src/post.js","../src/informer.js","../src/loader.js","../src/morebutton.js","../src/forum.js","../src/filter.js","../src/contentview.js","../src/page.js","../src/commentform.js","../src/feed.js"],"sourcesContent":["class Utils\n{\n\tstatic setStyle(node, styles)\n\t{\n\t\tObject.entries(styles).forEach(([key, value]) => {\n\t\t\tnode.style[key] = value;\n\t\t});\n\t}\n}\n\nexport {\n\tUtils\n};\n","import { ajax, Event, Type, Loc, Dom, Tag } from 'main.core';\nimport { BaseEvent, EventEmitter } from 'main.core.events';\nimport { MenuManager } from 'main.popup';\nimport { Utils } from \"./utils\";\n\nclass PinnedPanel\n{\n\tconstructor()\n\t{\n\t\tthis.class = {\n\t\t\tpin: 'feed-post-pin',\n\n\t\t\tpost: 'feed-item-wrap',\n\t\t\tpostHide: 'feed-item-wrap-hide',\n\t\t\tpostComments: 'feed-comments-block',\n\n\t\t\tpostPinned: 'feed-post-block-pinned',\n\t\t\tpostPinnedHide: 'feed-post-block-pinned-hide',\n\t\t\tpostPinActive: 'feed-post-block-pin-active',\n\t\t\tpostUnfollowed: 'feed-post-block-unfollowed',\n\n\t\t\tpostExpanding: 'feed-post-block-expand',\n\n\t\t\tpanelCollapsed: 'feed-pinned-panel-collapsed',\n\t\t\tpanelNonEmpty: 'feed-pinned-panel-nonempty',\n\t\t\tpanelPosts: 'feed-pinned-panel-posts',\n\n\t\t\tcollapsedPanel: 'feed-post-collapsed-panel',\n\t\t\tcollapsedPanelExpand: 'feed-post-collapsed-panel-right',\n\t\t\tcollapsedPanelCounterPostsValue: 'feed-post-collapsed-panel-count-posts',\n\t\t\tcollapsedPanelCounterComments: 'feed-post-collapsed-panel-box-comments',\n\t\t\tcollapsedPanelCounterCommentsValue: 'feed-post-collapsed-panel-count-comments-value',\n\t\t\tcollapsedPanelCounterCommentsShown: 'feed-post-collapsed-panel-box-shown',\n\t\t\tcollapsedPanelCounterCommentsValueNew: 'feed-inform-comments-pinned-new',\n\t\t\tcollapsedPanelCounterCommentsValueNewValue: 'feed-inform-comments-pinned-new-value',\n\t\t\tcollapsedPanelCounterCommentsValueNewActive: 'feed-inform-comments-pinned-new-active',\n\t\t\tcollapsedPanelCounterCommentsValueOld: 'feed-inform-comments-pinned-old',\n\t\t\tcollapsedPanelCounterCommentsValueAll: 'feed-inform-comments-pinned-all',\n\t\t\tcollapsedPanelShow: 'feed-post-collapsed-panel--show',\n\t\t\tcollapsedPanelHide: 'feed-post-collapsed-panel--hide',\n\n\t\t\tcancelPanel: 'feed-post-cancel-pinned-panel',\n\t\t\tcancelPanelButton: 'feed-post-cancel-pinned-btn',\n\t\t\tcancelPanelLabel: 'feed-post-cancel-pinned-label'\n\t\t};\n\n\t\tthis.panelInitialized = false;\n\t\tthis.postsInitialized = false;\n\t\tthis.handlePostClick = this.handlePostClick.bind(this);\n\t\tthis.options = {};\n\n\t\tEvent.ready(() => {\n\t\t\t/* for detail page without pinned panel */\n\t\t\tthis.initPosts();\n\t\t});\n\t}\n\n\tresetFlags()\n\t{\n\t\tthis.panelInitialized = false;\n\t\tthis.postsInitialized = false;\n\t}\n\n\tinit()\n\t{\n\t\t/* for list page in composite mode */\n\t\tthis.initPanel();\n\n\t\tthis.initPosts();\n\t\tthis.initEvents();\n\t}\n\n\tsetOptions(options)\n\t{\n\t\tthis.options = { ...this.options, ...options };\n\t}\n\n\tgetOption(optionName)\n\t{\n\t\treturn this.options[optionName];\n\t}\n\n\tinitPanel()\n\t{\n\t\tif (this.panelInitialized)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst pinnedPanelNode = this.getPanelNode();\n\t\tif (!pinnedPanelNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.panelInitialized = true;\n\n\t\tthis.adjustCollapsedPostsPanel();\n\n\t\tEvent.bind(this.getCollapsedPanelNode(), 'click', () => {\n\t\t\tconst pinnedPanelNode = this.getPanelNode();\n\t\t\tif (!pinnedPanelNode)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst collapsedHeight = pinnedPanelNode.offsetHeight;\n\n\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\theight: collapsedHeight + 'px',\n\t\t\t\ttransition: 'height .5s'\n\t\t\t});\n\t\t\tsetTimeout(() => {\n\t\t\t\tpinnedPanelNode.style = '';\n\t\t\t}, 550);\n\t\t\tthis.hideCollapsedPanel();\n\t\t});\n\n\t\tEvent.bind(pinnedPanelNode, 'click', (event) => {\n\t\t\tconst likeClicked = event.target.classList.contains('feed-inform-ilike') || event.target.closest('.feed-inform-ilike') !== null;\n\t\t\tconst followClicked = event.target.classList.contains('feed-inform-follow') || event.target.closest('.feed-inform-follow') !== null;\n\t\t\tconst menuClicked = (\n\t\t\t\tevent.target.classList.contains('feed-post-more-link')\n\t\t\t\t|| event.target.closest('.feed-post-more-link') !== null\n\t\t\t\t|| event.target.classList.contains('feed-post-right-top-menu')\n\t\t\t);\n\t\t\tconst contentViewClicked = event.target.classList.contains('feed-inform-contentview') || event.target.closest('.feed-inform-contentview') !== null;\n\t\t\tconst pinClicked = event.target.classList.contains(`${this.class.pin}`) || event.target.closest(`.${this.class.pin}`) !== null;\n\t\t\tconst collapseClicked = event.target.classList.contains('feed-post-pinned-link-collapse');\n\t\t\tconst commentsClicked = event.target.classList.contains('feed-inform-comments-pinned') || event.target.closest('.feed-inform-comments-pinned') !== null;\n\n\t\t\tlet postNode = null;\n\n\t\t\tif (event.target.classList.contains('feed-post-block'))\n\t\t\t{\n\t\t\t\tpostNode = event.target;\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tpostNode = event.target.closest('.feed-post-block');\n\t\t\t}\n\n\t\t\tif (!postNode)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (postNode.classList.contains(`${this.class.postPinned}`))\n\t\t\t{\n\t\t\t\tif (\n\t\t\t\t\t!likeClicked\n\t\t\t\t\t&& !followClicked\n\t\t\t\t\t&& !menuClicked\n\t\t\t\t\t&& !contentViewClicked\n\t\t\t\t\t&& !pinClicked\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tpostNode.classList.remove(`${this.class.postPinned}`);\n\n\t\t\t\t\tconst menuId = postNode.getAttribute('data-menu-id');\n\n\t\t\t\t\tif (menuId)\n\t\t\t\t\t{\n\t\t\t\t\t\tMenuManager.destroy(menuId);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst event = new BaseEvent({\n\t\t\t\t\t\tcompatData: [{\n\t\t\t\t\t\t\trootNode: postNode\n\t\t\t\t\t\t}],\n\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\trootNode: postNode\n\t\t\t\t\t\t},\n\t\t\t\t\t});\n\t\t\t\t\tEventEmitter.emit('BX.Livefeed:recalculateComments', event);\n\t\t\t\t}\n\n\t\t\t\tif (commentsClicked)\n\t\t\t\t{\n\t\t\t\t\tconst anchorNode = postNode.querySelector(`.${this.class.postComments} a[name=comments]`);\n\n\t\t\t\t\tif (anchorNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst position = Dom.getPosition(anchorNode);\n\t\t\t\t\t\twindow.scrollTo(0, position.top - 200);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t\telse if (collapseClicked)\n\t\t\t{\n\t\t\t\tpostNode.classList.add(`${this.class.postPinned}`);\n\n\t\t\t\tevent.stopPropagation();\n\t\t\t\tevent.preventDefault();\n\t\t\t}\n\t\t});\n\t}\n\n\tinitPosts()\n\t{\n\t\tif (this.postsInitialized)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst postList = document.querySelectorAll('[data-livefeed-post-pinned]');\n\t\tif (postList.length > 0)\n\t\t{\n\t\t\tthis.postsInitialized = true;\n\t\t}\n\n\t\tArray.from(postList).forEach((post) => {\n\t\t\tEvent.unbind(post, 'click', this.handlePostClick);\n\t\t\tEvent.bind(post, 'click', this.handlePostClick);\n\t\t});\n\t}\n\n\thandlePostClick(event)\n\t{\n\t\tif (!event.target.classList.contains(`${this.class.pin}`))\n\t\t{\n\t\t\treturn\n\t\t}\n\n\t\tconst post = event.target.closest('[data-livefeed-id]');\n\n\t\tif (!post)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst newState = (post.getAttribute('data-livefeed-post-pinned') === 'Y' ? 'N' : 'Y');\n\t\tconst logId = parseInt(post.getAttribute('data-livefeed-id'));\n\n\t\tif (logId <= 0)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.changePinned({\n\t\t\tlogId: logId,\n\t\t\tnewState: newState,\n\t\t\tevent: event\n\t\t\t\t}).then(() => {\n\t\t});\n\t}\n\n\tinitEvents()\n\t{\n\t\tEventEmitter.subscribe('OnUCCommentWasRead', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ xmlId, id, options ] = event.getData();\n\t\t\tconst { oldValue, newValue } = this.getCommentsData(xmlId);\n\n\t\t\tif (!!options.new)\n\t\t\t{\n\t\t\t\tthis.setCommentsData(xmlId, {\n\t\t\t\t\tnewValue: (Type.isInteger(newValue) ? (newValue - 1) : 0),\n\t\t\t\t\toldValue: (Type.isInteger(oldValue) ? (oldValue + 1) : 1)\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\n\t\tEventEmitter.incrementMaxListeners('OnUCCommentWasPulled');\n\t\tEventEmitter.subscribe('OnUCCommentWasPulled', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ id, data, params ] = event.getData();\n\t\t\tconst [ xmlId, commentId ] = id;\n\t\t\tconst { newValue, oldValue, allValue, follow } = this.getCommentsData(xmlId);\n\n\t\t\tconst commentsData = {\n\t\t\t\tallValue: (Type.isInteger(allValue) ? (allValue + 1) : 1)\n\t\t\t};\n\n\t\t\tif (parseInt(params.AUTHOR.ID) !== parseInt(BX.message('USER_ID')))\n\t\t\t{\n\t\t\t\tcommentsData.newValue = (Type.isInteger(newValue) ? (newValue + 1) : 1);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcommentsData.oldValue = (Type.isInteger(oldValue) ? (oldValue + 1) : 1);\n\t\t\t}\n\n\t\t\tthis.setCommentsData(xmlId, commentsData);\n\t\t});\n\n\t\tEventEmitter.subscribe('OnUCommentWasDeleted', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ xmlId, id, data ] = event.getData();\n\t\t\tconst { oldValue, allValue } = this.getCommentsData(xmlId);\n\n\t\t\tthis.setCommentsData(xmlId, {\n\t\t\t\tallValue: (Type.isInteger(allValue) ? (allValue - 1) : 0),\n\t\t\t\toldValue: (Type.isInteger(oldValue) ? (oldValue - 1) : 0)\n\t\t\t});\n\t\t});\n\t}\n\n\tchangePinned(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tconst event = (params.event ? params.event : null);\n\n\t\tlet node = (params.node ? params.node : null);\n\t\tlet newState = (params.newState ? params.newState : null);\n\n\t\tconst panelNode = this.getPanelNode();\n\n\t\tif (\n\t\t\t!node\n\t\t\t&& !event\n\t\t\t&& logId > 0\n\t\t\t&& panelNode\n\t\t)\n\t\t{\n\t\t\tnode = panelNode.querySelector(`.${this.class.post} > [data-livefeed-id=\"${logId}\"]`);\n\t\t}\n\n\t\tif (\n\t\t\t!node\n\t\t\t&& event\n\t\t)\n\t\t{\n\t\t\tnode = event.target;\n\t\t}\n\n\t\treturn new Promise((resolve, reject) => {\n\n\t\t\tif (\n\t\t\t\t!!this.getOption('pinBlocked') ||\n\t\t\t\t!node\n\t\t\t\t|| !newState\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn resolve();\n\t\t\t}\n\n\t\t\tthis.setPostState({\n\t\t\t\tnode: node,\n\t\t\t\tstate: newState\n\t\t\t});\n\n\t\t\tconst action = (\n\t\t\t\tnewState === 'Y'\n\t\t\t\t\t? 'socialnetwork.api.livefeed.logentry.pin'\n\t\t\t\t\t: 'socialnetwork.api.livefeed.logentry.unpin'\n\t\t\t);\n\n\t\t\tajax.runAction(action, {\n\t\t\t\tdata: {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tlogId: logId\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tanalyticsLabel: {\n\t\t\t\t\tb24statAction: (newState === 'Y' ? 'pinLivefeedEntry' : 'unpinLivefeedEntry')\n\t\t\t\t}\n\t\t\t}).then(response => {\n\t\t\t\tif (!response.data.success)\n\t\t\t\t{\n\t\t\t\t\tthis.setPostState({\n\t\t\t\t\t\tnode: node,\n\t\t\t\t\t\tstate: (newState === 'Y' ? 'N' : 'Y')\n\t\t\t\t\t});\n\t\t\t\t\treturn resolve();\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tthis.movePost({\n\t\t\t\t\t\tnode: node,\n\t\t\t\t\t\tstate: newState\n\t\t\t\t\t}).then(() => {\n\t\t\t\t\t\treturn resolve();\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}, response => {\n\t\t\t\tthis.setPostState({\n\t\t\t\t\tnode: node,\n\t\t\t\t\tstate: (newState === 'Y' ? 'N' : 'Y')\n\t\t\t\t});\n\t\t\t\treturn resolve();\n\t\t\t});\n\t\t});\n\t}\n\n\tsetPostState(params)\n\t{\n\t\tconst state = (params.state ? params.state : null);\n\t\tconst node = (params.node ? params.node : null);\n\n\t\tif (\n\t\t\t!node\n\t\t\t|| !['Y', 'N'].includes(state)\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst post = node.closest('[data-livefeed-post-pinned]');\n\t\tif (!post)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tpost.setAttribute('data-livefeed-post-pinned', state);\n\n\t\tif (state === 'Y')\n\t\t{\n\t\t\tpost.classList.add(`${this.class.postPinActive}`);\n\t\t}\n\t\telse\n\t\t{\n\t\t\tpost.classList.remove(`${this.class.postPinActive}`);\n\t\t}\n\n\t\tconst pin = post.querySelector(`.${this.class.pin}`);\n\t\tif (pin)\n\t\t{\n\t\t\tpin.setAttribute('title', Loc.getMessage(`SONET_EXT_LIVEFEED_PIN_TITLE_${state}`));\n\t\t}\n\t}\n\n\tgetPanelNode()\n\t{\n\t\treturn document.querySelector('[data-livefeed-pinned-panel]');\n\t}\n\n\tgetPinnedData(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\n\t\tif (logId <= 0)\n\t\t{\n\t\t\treturn Promise.reject();\n\t\t}\n\n\t\treturn new Promise((resolve, reject) => {\n\t\t\tajax.runAction('socialnetwork.api.livefeed.logentry.getPinData', {\n\t\t\t\tdata: {\n\t\t\t\t\tparams: {\n\t\t\t\t\t\tlogId: logId,\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\theaders: [\n\t\t\t\t\t{\n\t\t\t\t\t\tname: Loc.getMessage('SONET_EXT_LIVEFEED_AJAX_ENTITY_HEADER_NAME'),\n\t\t\t\t\t\tvalue: params.entityValue || '',\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tname: Loc.getMessage('SONET_EXT_LIVEFEED_AJAX_TOKEN_HEADER_NAME'),\n\t\t\t\t\t\tvalue: params.tokenValue || '',\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t}).then(response => {\n\t\t\t\treturn resolve(response.data);\n\t\t\t}, response => {\n\t\t\t\treturn reject();\n\t\t\t});\n\t\t})\n\t}\n\n\tmovePost(params)\n\t{\n\t\tconst state = (params.state ? params.state : null);\n\t\tconst node = (params.node ? params.node : null);\n\n\t\treturn new Promise((resolve, reject) => {\n\n\t\t\tif (\n\t\t\t\t!node\n\t\t\t\t|| !['Y', 'N'].includes(state)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn resolve();\n\t\t\t}\n\n\t\t\tconst post = node.closest('[data-livefeed-post-pinned]');\n\t\t\tif (!post)\n\t\t\t{\n\t\t\t\treturn resolve();\n\t\t\t}\n\n\t\t\tconst logId = parseInt(post.getAttribute('data-livefeed-id'));\n\t\t\tif (!logId)\n\t\t\t{\n\t\t\t\treturn resolve();\n\t\t\t}\n\n\t\t\tconst pinnedPanelNode = this.getPanelNode();\n\t\t\tif (!pinnedPanelNode)\n\t\t\t{\n\t\t\t\treturn resolve();\n\t\t\t}\n\n\t\t\tconst postToMove = (post.parentNode.classList.contains(`${this.class.post}`) ? post.parentNode : post);\n\n\t\t\tconst entityValue = post.getAttribute('data-security-entity-pin');\n\t\t\tconst tokenValue = post.getAttribute('data-security-token-pin');\n\n\t\t\tif (state === 'Y')\n\t\t\t{\n\t\t\t\tconst originalPostHeight = postToMove.offsetHeight;\n\t\t\t\tpostToMove.setAttribute('bx-data-height', originalPostHeight);\n\n\t\t\t\tthis.getPinnedData({\n\t\t\t\t\tlogId: logId,\n\t\t\t\t\tentityValue: entityValue,\n\t\t\t\t\ttokenValue: tokenValue,\n\t\t\t\t}).then(data => {\n\t\t\t\t\tconst pinnedPanelTitleNode = post.querySelector('.feed-post-pinned-title');\n\t\t\t\t\tconst pinnedPanelDescriptionNode = post.querySelector('.feed-post-pinned-desc');\n\t\t\t\t\tconst pinnedPanelPinNode = post.querySelector(`.${this.class.pin}`);\n\n\t\t\t\t\tif (pinnedPanelTitleNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tpinnedPanelTitleNode.innerHTML = data.TITLE;\n\t\t\t\t\t}\n\t\t\t\t\tif (pinnedPanelDescriptionNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tpinnedPanelDescriptionNode.innerHTML = data.DESCRIPTION;\n\t\t\t\t\t}\n\t\t\t\t\tif (pinnedPanelPinNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tpinnedPanelPinNode.title = Loc.getMessage('SONET_EXT_LIVEFEED_PIN_TITLE_Y');\n\t\t\t\t\t}\n\n\t\t\t\t\tpost.classList.add(`${this.class.postPinnedHide}`);\n\n\t\t\t\t\tconst cancelPinnedPanel = this.getCancelPinnedPanel({ logId });\n\t\t\t\t\tconst anchor = postToMove.nextSibling;\n\n\t\t\t\t\tanchor.parentNode.insertBefore(cancelPinnedPanel, anchor);\n\t\t\t\t\tthis.centerCancelPinnedPanelElements({ cancelPinnedPanel });\n\n\t\t\t\t\tcancelPinnedPanel.setAttribute('bx-data-height', originalPostHeight);\n\t\t\t\t\tconst cancelPanelHeight = cancelPinnedPanel.getAttribute('bx-data-height');\n\n\t\t\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\t\t\theight: cancelPanelHeight + 'px'\n\t\t\t\t\t});\n\n\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\tposition: 'absolute',\n\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\theight: originalPostHeight + 'px',\n\t\t\t\t\t\tbackgroundColor: 'transparent',\n\t\t\t\t\t\topacity: 0\n\t\t\t\t\t});\n\n\t\t\t\t\tconst panelNode = this.getPanelNode();\n\t\t\t\t\tif (panelNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.setOptions({\n\t\t\t\t\t\t\tpanelHeight: panelNode.offsetHeight\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\t// list.post::hide.start, cancelPanel::show.start\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tpostToMove.classList.add(`${this.class.postHide}`);\n\t\t\t\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\t\t\t\theight: '53px'\n\t\t\t\t\t\t});\n\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\theight: 0,\n\t\t\t\t\t\t\topacity: 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\tthis.setOptions({\n\t\t\t\t\t\t\tpinBlocked: true\n\t\t\t\t\t\t});\n\t\t\t\t\t}, 100);\n\n\t\t\t\t\t// list.post::hide.end\n\t\t\t\t\tEvent.unbindAll(postToMove, 'transitionend');\n\t\t\t\t\tEvent.bind(postToMove, 'transitionend', (event) => {\n\t\t\t\t\t\tif (!this.checkTransitionProperty(event, 'height'))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tEvent.unbindAll(postToMove, 'transitionend');\n\n\t\t\t\t\t\tconst panelPostsNode = pinnedPanelNode.querySelector(`.${this.class.panelPosts}`);\n\n\t\t\t\t\t\tpanelPostsNode.insertBefore(postToMove, panelPostsNode.firstChild);\n\t\t\t\t\t\tthis.adjustCollapsedPostsPanel();\n\n\t\t\t\t\t\tpostToMove.classList.remove(`${this.class.postHide}`);\n\t\t\t\t\t\tpost.classList.remove(`${this.class.postPinnedHide}`);\n\n\t\t\t\t\t\tthis.adjustPanel();\n\t\t\t\t\t\tthis.showCollapsedPostsPanel();\n\n\t\t\t\t\t\t// pinnedPanel.post::show.start\n\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\tpost.classList.add(`${this.class.postPinned}`);\n\t\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\t\tposition: '',\n\t\t\t\t\t\t\t\twidth: '',\n\t\t\t\t\t\t\t\theight: '80px',\n\t\t\t\t\t\t\t\tbackgroundColor: '',\n\t\t\t\t\t\t\t\topacity: 1\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tthis.setOptions({\n\t\t\t\t\t\t\t\tpinBlocked: false\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\t\tpostToMove.classList.remove(`${this.class.postHide}`);\n\t\t\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\t\t\tposition: '',\n\t\t\t\t\t\t\t\t\twidth: '',\n\t\t\t\t\t\t\t\t\theight: '',\n\t\t\t\t\t\t\t\t\tbackgroundColor: '',\n\t\t\t\t\t\t\t\t\topacity: ''\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}, 600); // 600 > transition 0.5\n\n\t\t\t\t\t\t}, 300);\n\t\t\t\t\t});\n\n\t\t\t\t\treturn resolve();\n\t\t\t\t});\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tconst height = postToMove.getAttribute('bx-data-height');\n\t\t\t\tconst pinnedHeight = postToMove.scrollHeight;\n\n\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\ttransition: '',\n\t\t\t\t});\n\n\t\t\t\tconst cancelPinnedPanel = document.querySelector(`.${this.class.cancelPanel}[bx-data-log-id=\"${logId}\"]`);\n\t\t\t\tif (Type.isDomNode(cancelPinnedPanel))\n\t\t\t\t{\n\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\theight: pinnedHeight + 'px'\n\t\t\t\t\t});\n\n\t\t\t\t\t// pinnedPanel.post::hide.start, cancelPanel::show.start\n\t\t\t\t\trequestAnimationFrame(() => {\n\n\t\t\t\t\t\tpostToMove.classList.add(`${this.class.postExpanding}`);\n\t\t\t\t\t\tcancelPinnedPanel.classList.add(`${this.class.postExpanding}`);\n\n\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\theight: 0\n\t\t\t\t\t\t});\n\t\t\t\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\t\theight: 0\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\n\t\t\t\t\tconst collapsed = pinnedPanelNode.classList.contains(`${this.class.panelCollapsed}`);\n\n\t\t\t\t\tif (collapsed)\n\t\t\t\t\t{\n\t\t\t\t\t\tcancelPinnedPanel.parentNode.insertBefore(postToMove, cancelPinnedPanel.nextSibling);\n\t\t\t\t\t\tthis.adjustCollapsedPostsPanel();\n\t\t\t\t\t\tthis.adjustPanel();\n\t\t\t\t\t}\n\n\t\t\t\t\tconst showCollapsed = this.getCollapsedPanelNode().classList.contains(`${this.class.collapsedPanelShow}`);\n\t\t\t\t\tif (showCollapsed)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.hideCollapsedPostsPanel();\n\n\t\t\t\t\t\t// cancelPanel::show.end\n\t\t\t\t\t\tEvent.unbindAll(cancelPinnedPanel, 'transitionend');\n\t\t\t\t\t\tEvent.bind(cancelPinnedPanel, 'transitionend', (event) => {\n\t\t\t\t\t\t\tif (!this.checkTransitionProperty(event, 'height'))\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\t\ttransform: '',\n\t\t\t\t\t\t\t\tdisplay: 'block'\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tthis.animateCancel({\n\t\t\t\t\t\t\t\tpost,\n\t\t\t\t\t\t\t\tpostToMove,\n\t\t\t\t\t\t\t\tcancelPinnedPanel,\n\t\t\t\t\t\t\t\theight\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\n\t\t\t\t\t// pinnedPanel.post::hide.end\n\t\t\t\t\tEvent.unbindAll(postToMove, 'transitionend');\n\t\t\t\t\tEvent.bind(postToMove, 'transitionend', (event) => {\n\t\t\t\t\t\tif (!this.checkTransitionProperty(event, 'opacity'))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (!collapsed)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcancelPinnedPanel.parentNode.insertBefore(postToMove, cancelPinnedPanel.nextSibling);\n\t\t\t\t\t\t\tthis.adjustCollapsedPostsPanel();\n\t\t\t\t\t\t\tthis.adjustPanel();\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tthis.animateCancel({\n\t\t\t\t\t\t\tpost,\n\t\t\t\t\t\t\tpostToMove,\n\t\t\t\t\t\t\tcancelPinnedPanel,\n\t\t\t\t\t\t\theight\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tpost.classList.remove(`${this.class.postPinned}`);\n\t\t\t\t\tpinnedPanelNode.parentNode.insertBefore(postToMove, pinnedPanelNode.nextSibling);\n\t\t\t\t\tthis.adjustPanel();\n\n\t\t\t\t\tconst originalPostHeight = postToMove.scrollHeight;\n\t\t\t\t\tpostToMove.setAttribute('bx-data-height', originalPostHeight);\n\n\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\theight: '80px'\n\t\t\t\t\t});\n\n\t\t\t\t\t// list.post::show.start\n\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\topacity: 1,\n\t\t\t\t\t\t\theight: originalPostHeight + 'px'\n\t\t\t\t\t\t});\n\t\t\t\t\t}, 100);\n\n\t\t\t\t\t// list.post::show.end\n\t\t\t\t\tEvent.unbindAll(postToMove, 'transitionend');\n\t\t\t\t\tEvent.bind(postToMove, 'transitionend', (event) => {\n\t\t\t\t\t\tif (!this.checkTransitionProperty(event, 'height'))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\t\t\t\theight:''\n\t\t\t\t\t\t});\n\t\t\t\t\t})\n\t\t\t\t}\n\n\t\t\t\treturn resolve();\n\t\t\t}\n\t\t});\n\t}\n\n\tanimateCancel({\n\t\tpost,\n\t \tpostToMove,\n\t\tcancelPinnedPanel,\n\t\theight\n\t})\n\t{\n\t\tpost.classList.remove(`${this.class.postPinned}`);\n\n\t\t// post.list:show.start, cancelPanel::hide.start\n\t\tsetTimeout(() => {\n\n\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\topacity: 1,\n\t\t\t\theight: height + 'px'\n\t\t\t});\n\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\theight: 0\n\t\t\t});\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tcancelPinnedPanel.remove();\n\t\t\t}, 100)\n\t\t}, 100);\n\n\t\t// post.list:show.end\n\t\tEvent.unbindAll(postToMove, 'transitionend');\n\t\tEvent.bind(postToMove, 'transitionend', (event) => {\n\t\t\tif (!this.checkTransitionProperty(event, 'height'))\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tpost.classList.remove(`${this.class.postPinnedHide}`);\n\n\t\t\tUtils.setStyle(postToMove, {\n\t\t\t\tmarginBottom: '',\n\t\t\t\theight: ''\n\t\t\t});\n\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\tmarginBottom: '',\n\t\t\t\theight: ''\n\t\t\t});\n\n\t\t\tpostToMove.classList.remove(`${this.class.postExpanding}`);\n\t\t\tcancelPinnedPanel.classList.remove(`${this.class.postExpanding}`);\n\t\t});\n\t}\n\n\tgetCancelPinnedPanel(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tif (logId <= 0)\n\t\t{\n\t\t\treturn null;\n\t\t}\n\n\t\tlet cancelPinnedPanel = document.querySelector(`.${this.class.cancelPanel}[bx-data-log-id=\"${logId}\"]`);\n\n\t\tif (!Type.isDomNode(cancelPinnedPanel))\n\t\t{\n\t\t\tcancelPinnedPanel = Tag.render`\n\t\t\t\t<div class=\"${this.class.cancelPanel}\" bx-data-log-id=\"${logId}\">\n\t\t\t\t\t<div class=\"feed-post-cancel-pinned-panel-inner\">\n\t\t\t\t\t\t<div class=\"feed-post-cancel-pinned-content\">\n\t\t\t\t\t\t\t<span class=\"${this.class.cancelPanelLabel}\">${Loc.getMessage('SONET_EXT_LIVEFEED_PINNED_CANCEL_TITLE')}</span>\n\t\t\t\t\t\t\t<span class=\"feed-post-cancel-pinned-text\">${Loc.getMessage('SONET_EXT_LIVEFEED_PINNED_CANCEL_DESCRIPTION')}</span>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<button class=\"ui-btn ui-btn-light-border ui-btn-round ui-btn-sm ${this.class.cancelPanelButton}\">${Loc.getMessage('SONET_EXT_LIVEFEED_PINNED_CANCEL_BUTTON')}</button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\t\n\t\t\t\t`;\n\n\t\t\tEvent.bind(cancelPinnedPanel.querySelector(`.${this.class.cancelPanelButton}`), 'click', () => {\n\t\t\t\tthis.changePinned({\n\t\t\t\t\tlogId: logId,\n\t\t\t\t\tnewState: 'N'\n\t\t\t\t}).then(() => {\n\t\t\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\t\t\topacity: 0,\n\t\t\t\t\t\theight: 0\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\n\t\treturn cancelPinnedPanel;\n\t}\n\n\tcenterCancelPinnedPanelElements({ cancelPinnedPanel })\n\t{\n\t\tif (!Type.isDomNode(cancelPinnedPanel))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\t// cancelPanel::show.start\n\t\tsetTimeout(() => {\n\t\t\tUtils.setStyle(cancelPinnedPanel, {\n\t\t\t\topacity: 1\n\t\t\t});\n\t\t}, 100);\n\n\t\tUtils.setStyle(cancelPinnedPanel.querySelector(`.${this.class.cancelPanelLabel}`), {\n\t\t\tmarginLeft: cancelPinnedPanel.querySelector(`.${this.class.cancelPanelButton}`).getBoundingClientRect().width + 'px'\n\t\t});\n\t}\n\n\tgetPostsCount()\n\t{\n\t\tconst panelNode = this.getPanelNode();\n\t\treturn (panelNode ? Array.from(panelNode.getElementsByClassName(`${this.class.post}`)).length : 0);\n\t}\n\n\thidePinnedItems()\n\t{\n\t\tconst pinnedPanelNode = this.getPanelNode();\n\t\tif (!pinnedPanelNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\theight: parseInt(this.getOption('panelHeight')) + 'px'\n\t\t});\n\n\t\tArray.from(pinnedPanelNode.getElementsByClassName(`${this.class.post}`)).reduce((count, item) => {\n\n\t\t\tcount += item.offsetHeight;\n\n\t\t\tUtils.setStyle(item, {\n\t\t\t\ttransition: 'opacity .1s linear, transform .2s .1s linear, height .5s linear'\n\t\t\t});\n\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\ttransition: 'height .5s .1s linear'\n\t\t\t});\n\n\t\t\t// pinnedPanel.post::hide.start\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tUtils.setStyle(item, {\n\t\t\t\t\topacity: '0!important',\n\t\t\t\t\ttransform: `translateY(-${count}px)`\n\t\t\t\t});\n\t\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\t\theight: '58px'\n\t\t\t\t});\n\t\t\t});\n\n\t\t\t// pinnedPanel.post::hide.end\n\t\t\tEvent.unbindAll(item, 'transitionend');\n\t\t\tEvent.bind(item, 'transitionend', (event) => {\n\t\t\t\tif (!this.checkTransitionProperty(event, 'transform'))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tUtils.setStyle(item, {\n\t\t\t\t\tdisplay: 'none',\n\t\t\t\t\topacity: '',\n\t\t\t\t\ttransform: '',\n\t\t\t\t\ttransition: ''\n\t\t\t\t});\n\t\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\t\ttransition: ''\n\t\t\t\t});\n\t\t\t});\n\n\t\t\treturn count;\n\t\t}, 0);\n\t}\n\n\tshowPinnedItems()\n\t{\n\t\tconst pinnedPanelNode = this.getPanelNode();\n\t\tif (!pinnedPanelNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tArray.from(pinnedPanelNode.getElementsByClassName(`${this.class.post}`)).map((item, currentIndex, originalItemsList) => {\n\n\t\t\tUtils.setStyle(item, {\n\t\t\t\tdisplay: 'block',\n\t\t\t\topacity: 0\n\t\t\t});\n\n\t\t\t// pinnedPanel.post::show.start\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\t\theight: ((84 * (currentIndex + 1)) - 4) + 'px'\n\t\t\t\t});\n\t\t\t\tUtils.setStyle(item, {\n\t\t\t\t\ttransform: `translateY(${0}px)`,\n\t\t\t\t\topacity: 1\n\t\t\t\t});\n\t\t\t});\n\n\t\t\t// pinnedPanel.post::show.end\n\t\t\tEvent.unbindAll(item, 'transitionend');\n\t\t\tEvent.bind(item, 'transitionend', (event) => {\n\t\t\t\tif (!this.checkTransitionProperty(event, 'transform'))\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tUtils.setStyle(item, {\n\t\t\t\t\tdisplay: 'block',\n\t\t\t\t\theight: '',\n\t\t\t\t\ttransform: ''\n\t\t\t\t});\n\t\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\t\theight: ''\n\t\t\t\t});\n\n\t\t\t\tif ((currentIndex + 1) === originalItemsList.length)\n\t\t\t\t{\n\t\t\t\t\tUtils.setStyle(pinnedPanelNode, {\n\t\t\t\t\t\ttransition: '',\n\t\t\t\t\t\theight: ''\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\tanimateCollapsedPanel()\n\t{\n\t\t// collapsedPanel::hide.start\n\t\trequestAnimationFrame(() => {\n\t\t\tconst collapsedPanel = this.getCollapsedPanelNode();\n\n\t\t\tUtils.setStyle(collapsedPanel, {\n\t\t\t\tposition: 'absolute',\n\t\t\t\ttop: 0,\n\t\t\t\twidth: '100%',\n\t\t\t\topacity: 0\n\t\t\t});\n\n\t\t\tcollapsedPanel.classList.remove(`${this.class.collapsedPanelHide}`);\n\t\t\tcollapsedPanel.classList.add(`${this.class.collapsedPanelShow}`);\n\n\t\t\t// collapsedPanel::show.start\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tUtils.setStyle(collapsedPanel, {\n\t\t\t\t\tposition: 'relative',\n\t\t\t\t\topacity: 1\n\t\t\t\t});\n\t\t\t});\n\t\t})\n\t}\n\n\tadjustCollapsedPostsPanel()\n\t{\n\t\tconst postsCounter = this.getPostsCount();\n\t\tconst postsCounterNode = this.getCollapsedPanelNode().querySelector(`.${this.class.collapsedPanelCounterPostsValue}`);\n\t\tif (postsCounterNode)\n\t\t{\n\t\t\tpostsCounterNode.innerHTML = parseInt(postsCounter);\n\t\t}\n\n\t\tconst commentsCounterNode = this.getCollapsedPanelNode().querySelector(`.${this.class.collapsedPanelCounterComments}`);\n\t\tconst commentsCounterValueNode = this.getCollapsedPanelNode().querySelector(`.${this.class.collapsedPanelCounterCommentsValue}`);\n\t\tconst panelNode = this.getPanelNode();\n\n\t\tif (\n\t\t\tcommentsCounterNode\n\t\t\t&& commentsCounterValueNode\n\t\t\t&& panelNode\n\t\t)\n\t\t{\n\t\t\tconst newCommentCounter = Array.from(panelNode.querySelectorAll(`.${this.class.collapsedPanelCounterCommentsValueNewValue}`)).reduce((acc, node) => {\n\t\t\t\treturn acc + (node.closest(`.${this.class.postUnfollowed}`) ? 0 : parseInt(node.innerHTML));\n\t\t\t}, 0);\n\n\t\t\tcommentsCounterValueNode.innerHTML = newCommentCounter;\n\t\t\tif (newCommentCounter > 0)\n\t\t\t{\n\t\t\t\tcommentsCounterNode.classList.add(`${this.class.collapsedPanelCounterCommentsShown}`);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tcommentsCounterNode.classList.remove(`${this.class.collapsedPanelCounterCommentsShown}`);\n\t\t\t}\n\t\t}\n\t}\n\n\tadjustPanel()\n\t{\n\t\tconst panelNode = this.getPanelNode();\n\t\tif (!panelNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tsetTimeout(() => {\n\t\t\tif (this.getPostsCount() > 0)\n\t\t\t{\n\t\t\t\tpanelNode.classList.add(`${this.class.panelNonEmpty}`);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tpanelNode.classList.remove(`${this.class.panelNonEmpty}`);\n\t\t\t}\n\t\t}, 0);\n\t}\n\n\tshowCollapsedPostsPanel()\n\t{\n\t\tif (this.getPostsCount() >= Loc.getMessage('SONET_EXT_LIVEFEED_COLLAPSED_PINNED_PANEL_ITEMS_LIMIT'))\n\t\t{\n\t\t\tthis.showCollapsedPanel();\n\t\t\tthis.hidePinnedItems();\n\t\t}\n\t}\n\n\thideCollapsedPostsPanel()\n\t{\n\t\tif (this.getPostsCount() < Loc.getMessage('SONET_EXT_LIVEFEED_COLLAPSED_PINNED_PANEL_ITEMS_LIMIT'))\n\t\t{\n\t\t\tthis.getPanelNode().classList.remove(`${this.class.panelCollapsed}`);\n\t\t\tthis.removeCollapsedPanel();\n\t\t\tthis.showPinnedItems();\n\t\t}\n\t}\n\n\tshowCollapsedPanel()\n\t{\n\t\tthis.getPanelNode().classList.add(`${this.class.panelCollapsed}`);\n\t\tthis.animateCollapsedPanel();\n\t}\n\n\thideCollapsedPanel()\n\t{\n\t\tthis.getPanelNode().classList.remove(`${this.class.panelCollapsed}`);\n\t\tthis.showPinnedItems();\n\t\tthis.removeCollapsedPanel();\n\t}\n\n\tremoveCollapsedPanel()\n\t{\n\t\tconst collapsedPanel = this.getCollapsedPanelNode();\n\n\t\tUtils.setStyle(collapsedPanel, {\n\t\t\tposition: 'absolute',\n\t\t\ttop: 0,\n\t\t\twidth: '100%'\n\t\t});\n\n\t\tcollapsedPanel.classList.remove(`${this.class.collapsedPanelShow}`);\n\t\tcollapsedPanel.classList.add(`${this.class.collapsedPanelHide}`);\n\t}\n\n\tgetCommentsNodes(xmlId)\n\t{\n\t\tconst result = {\n\t\t\tfollow: true,\n\t\t\tnewNode: null,\n\t\t\tnewValueNode: null,\n\t\t\toldNode: null,\n\t\t\tallNode: null\n\t\t};\n\n\t\tif (!Type.isStringFilled(xmlId))\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tconst commentsNode = document.querySelector(`.${this.class.postComments}[data-bx-comments-entity-xml-id=\"${xmlId}\"]`);\n\t\tif (!commentsNode)\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tconst postNode = commentsNode.closest(`.${this.class.postPinActive}`);\n\t\tif (!postNode)\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tconst newPinnedCommentsNode = postNode.querySelector(`.${this.class.collapsedPanelCounterCommentsValueNew}`);\n\t\tconst newValuePinnedCommentsNode = postNode.querySelector(`.${this.class.collapsedPanelCounterCommentsValueNewValue}`);\n\t\tconst oldPinnedCommentsNode = postNode.querySelector(`.${this.class.collapsedPanelCounterCommentsValueOld}`);\n\t\tconst allPinnedCommentsNode = postNode.querySelector(`.${this.class.collapsedPanelCounterCommentsValueAll}`);\n\n\t\tif (\n\t\t\t!newPinnedCommentsNode\n\t\t\t|| !newValuePinnedCommentsNode\n\t\t\t|| !oldPinnedCommentsNode\n\t\t\t|| !allPinnedCommentsNode\n\n\t\t)\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tresult.newNode = newPinnedCommentsNode;\n\t\tresult.newValueNode = newValuePinnedCommentsNode;\n\t\tresult.oldNode = oldPinnedCommentsNode;\n\t\tresult.allNode = allPinnedCommentsNode;\n\t\tresult.follow = (commentsNode.getAttribute('data-bx-follow') !== 'N');\n\n\t\treturn result;\n\t}\n\n\tgetCommentsData(xmlId)\n\t{\n\t\tconst result = {\n\t\t\tnewValue: null,\n\t\t\toldValue: null,\n\t\t\tallValue: null\n\t\t};\n\n\t\tif (!Type.isStringFilled(xmlId))\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tconst { newValueNode, oldNode, allNode, follow } = this.getCommentsNodes(xmlId);\n\n\t\tresult.follow = follow;\n\n\t\tif (\n\t\t\t!Type.isDomNode(newValueNode)\n\t\t\t|| !Type.isDomNode(oldNode)\n\t\t)\n\t\t{\n\t\t\treturn result;\n\t\t}\n\n\t\tlet newCommentsValue = 0;\n\t\tlet oldCommentsValue = 0;\n\t\tlet allCommentsValue = 0;\n\n\t\tlet matches = newValueNode.innerHTML.match(/(\\d+)/);\n\n\t\tif (matches)\n\t\t{\n\t\t\tnewCommentsValue = parseInt(matches[1]);\n\t\t}\n\n\t\tmatches = oldNode.innerHTML.match(/(\\d+)/);\n\t\tif (matches)\n\t\t{\n\t\t\toldCommentsValue = parseInt(matches[1]);\n\t\t}\n\n\t\tmatches = allNode.innerHTML.match(/(\\d+)/);\n\t\tif (matches)\n\t\t{\n\t\t\tallCommentsValue = parseInt(matches[1]);\n\t\t}\n\n\t\tresult.oldValue = oldCommentsValue;\n\t\tresult.newValue = newCommentsValue;\n\t\tresult.allValue = allCommentsValue;\n\n\t\treturn result;\n\t}\n\n\tsetCommentsData(xmlId, value)\n\t{\n\t\tif (!Type.isStringFilled(xmlId))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst { newNode, newValueNode, oldNode, allNode } = this.getCommentsNodes(xmlId);\n\t\tif (\n\t\t\t!Type.isDomNode(newNode)\n\t\t\t|| !Type.isDomNode(newValueNode)\n\t\t\t|| !Type.isDomNode(oldNode)\n\t\t\t|| !Type.isDomNode(allNode)\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (Type.isInteger(value.newValue))\n\t\t{\n\t\t\tnewValueNode.innerHTML = `${value.newValue}`;\n\t\t\tif (\n\t\t\t\tvalue.newValue > 0\n\t\t\t\t&& !newNode.classList.contains(`${this.class.collapsedPanelCounterCommentsValueNewActive}`)\n\t\t\t)\n\t\t\t{\n\t\t\t\tnewNode.classList.add(`${this.class.collapsedPanelCounterCommentsValueNewActive}`);\n\t\t\t}\n\t\t\telse if (\n\t\t\t\tvalue.newValue <= 0\n\t\t\t\t&& newNode.classList.contains(`${this.class.collapsedPanelCounterCommentsValueNewActive}`)\n\t\t\t)\n\t\t\t{\n\t\t\t\tnewNode.classList.remove(`${this.class.collapsedPanelCounterCommentsValueNewActive}`);\n\t\t\t}\n\t\t}\n\n\t\tif (Type.isInteger(value.oldValue))\n\t\t{\n\t\t\toldNode.innerHTML = value.oldValue;\n\t\t}\n\n\t\tif (Type.isInteger(value.allValue))\n\t\t{\n\t\t\tallNode.innerHTML = value.allValue;\n\t\t}\n\n\t\tthis.adjustCollapsedPostsPanel();\n\t}\n\n\tgetCollapsedPanelNode()\n\t{\n\t\treturn this.getPanelNode().querySelector(`.${this.class.collapsedPanel}`);\n\t}\n\n\tcheckTransitionProperty(event, propertyName)\n\t{\n\t\treturn (event.propertyName === propertyName);\n\t}\n}\n\nexport {\n\tPinnedPanel\n};\n","import {ajax, Type, Loc, Dom, Tag} from 'main.core';\nimport {Popup} from 'main.popup';\nimport {BaseEvent, EventEmitter} from 'main.core.events';\n\nexport class TaskCreator\n{\n\tstatic createTaskPopup = null;\n\tstatic cssClass = {\n\t\tpopupContent: 'feed-create-task-popup-content',\n\t\tpopupTitle: 'feed-create-task-popup-title',\n\t\tpopupDescription: 'feed-create-task-popup-description',\n\t};\n\tstatic signedFiles = null;\n\tstatic sliderUrl = '';\n\n\tconstructor()\n\t{\n\t\tthis.initEvents();\n\t}\n\n\tinitEvents()\n\t{\n\n\t\tEventEmitter.subscribe('tasksTaskEvent', (event: BaseEvent) => {\n\n\t\t\tconst [ type, data ] = event.getCompatData();\n\t\t\tif (\n\t\t\t\ttype !== 'ADD'\n\t\t\t\t|| !Type.isPlainObject(data.options)\n\t\t\t\t|| !Type.isBoolean(data.options.STAY_AT_PAGE)\n\t\t\t\t|| data.options.STAY_AT_PAGE\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tTaskCreator.signedFiles = null;\n\t\t});\n\n\t\tEventEmitter.subscribe('SidePanel.Slider:onCloseComplete', (event: BaseEvent) => {\n\n\t\t\tconst sliderInstance = event.getTarget();\n\t\t\tif (!sliderInstance)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst sliderUrl = sliderInstance.getUrl();\n\t\t\tif (\n\t\t\t\t!Type.isStringFilled(sliderUrl)\n\t\t\t\t|| sliderUrl !== TaskCreator.sliderUrl\n\t\t\t\t|| !Type.isStringFilled(TaskCreator.signedFiles)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tajax.runAction('intranet.controlbutton.clearNewTaskFiles', {\n\t\t\t\tdata: {\n\t\t\t\t\tsignedFiles: TaskCreator.signedFiles,\n\t\t\t\t},\n\t\t\t}).then(() => {\n\t\t\t\tTaskCreator.signedFiles = null;\n\t\t\t});\n\t\t});\n\t}\n\n\tstatic create(params)\n\t{\n\t\tif (Loc.getMessage('SONET_EXT_LIVEFEED_INTRANET_INSTALLED') === 'Y')\n\t\t{\n\t\t\tajax.runAction('intranet.controlbutton.getTaskLink', {\n\t\t\t\tdata: {\n\t\t\t\t\tentityType: params.entityType,\n\t\t\t\t\tentityId: params.entityId,\n\t\t\t\t\tpostEntityType: (Type.isStringFilled(params.postEntityType) ? params.postEntityType : params.entityType),\n\t\t\t\t\tentityData: {},\n\t\t\t\t},\n\t\t\t}).then((response) => {\n\t\t\t\tif (!Type.isStringFilled(response.data.SUFFIX))\n\t\t\t\t{\n\t\t\t\t\tresponse.data.SUFFIX = '';\n\t\t\t\t}\n\n\t\t\t\tconst requestData = response.data;\n\n\t\t\t\trequestData.DESCRIPTION = this.formatTaskDescription(requestData.DESCRIPTION, requestData.URL, params.entityType, requestData.SUFFIX);\n\n\t\t\t\tif (parseInt(params.parentTaskId) > 0)\n\t\t\t\t{\n\t\t\t\t\trequestData.PARENT_ID = parseInt(params.parentTaskId);\n\t\t\t\t}\n\n\t\t\t\tif (Type.isStringFilled(requestData.UF_TASK_WEBDAV_FILES_SIGN))\n\t\t\t\t{\n\t\t\t\t\tthis.signedFiles = requestData.UF_TASK_WEBDAV_FILES_SIGN;\n\t\t\t\t}\n\n\t\t\t\tthis.sliderUrl = response.data.link;\n\n\t\t\t\tconst link = this.getLinkWithAnalytics(response.data.link, params);\n\t\t\t\tBX.SidePanel.Instance.open(link, {\n\t\t\t\t\trequestMethod: 'post',\n\t\t\t\t\trequestParams: requestData,\n\t\t\t\t\tcacheable: false,\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.createTaskPopup = new Popup('BXCTP', null, {\n\t\t\t\tautoHide: false,\n\t\t\t\tzIndex: 0,\n\t\t\t\toffsetLeft: 0,\n\t\t\t\toffsetTop: 0,\n\t\t\t\toverlay: false,\n\t\t\t\tlightShadow: true,\n\t\t\t\tcloseIcon: {\n\t\t\t\t\tright: '12px',\n\t\t\t\t\ttop: '10px',\n\t\t\t\t},\n\t\t\t\tdraggable: {\n\t\t\t\t\trestrict: true,\n\t\t\t\t},\n\t\t\t\tcloseByEsc: false,\n\t\t\t\tcontentColor : 'white',\n\t\t\t\tcontentNoPaddings: true,\n\t\t\t\tbuttons: [],\n\t\t\t\tcontent: Tag.render`<div id=\"BXCTP_content\" class=\"${this.cssClass.popupContent}\"></div>`,\n\t\t\t\tevents: {\n\t\t\t\t\tonAfterPopupShow: () => {\n\t\t\t\t\t\tthis.createTaskSetContent(Tag.render`<div class=\"${this.cssClass.popupTitle}\">${Loc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_WAIT')}</div>`);\n\n\t\t\t\t\t\tajax.runAction('socialnetwork.api.livefeed.getRawEntryData', {\n\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\tparams: {\n\t\t\t\t\t\t\t\t\tentityType: params.entityType,\n\t\t\t\t\t\t\t\t\tentityId: params.entityId,\n\t\t\t\t\t\t\t\t\tlogId: (Type.isNumber(params.logId) ? params.logId : null),\n\t\t\t\t\t\t\t\t\tadditionalParams: {\n\t\t\t\t\t\t\t\t\t\tgetSonetGroupAvailable: 'Y',\n\t\t\t\t\t\t\t\t\t\tgetLivefeedUrl: 'Y',\n\t\t\t\t\t\t\t\t\t\tcheckPermissions: {\n\t\t\t\t\t\t\t\t\t\t\tfeature: 'tasks',\n\t\t\t\t\t\t\t\t\t\t\toperation: 'create_tasks',\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}).then((response) => {\n\n\t\t\t\t\t\t\tconst entryTitle = (Type.isStringFilled(response.data.TITLE) ? response.data.TITLE : '');\n\t\t\t\t\t\t\tconst entryDescription = (Type.isStringFilled(response.data.DESCRIPTION) ? response.data.DESCRIPTION : '');\n\t\t\t\t\t\t\tconst entryDiskObjects = (Type.isPlainObject(response.data.DISK_OBJECTS) ? response.data.DISK_OBJECTS : []);\n\t\t\t\t\t\t\tconst entryUrl = (Type.isStringFilled(response.data.LIVEFEED_URL) ? response.data.LIVEFEED_URL : '');\n\t\t\t\t\t\t\tconst entrySuffix = (Type.isStringFilled(response.data.SUFFIX) ? response.data.SUFFIX : '');\n\t\t\t\t\t\t\tconst groupsAvailable = (Type.isPlainObject(response.data.GROUPS_AVAILABLE) ? response.data.GROUPS_AVAILABLE : []);\n\t\t\t\t\t\t\tconst logId = (!Type.isUndefined(response.data.LOG_ID) ? parseInt(response.data.LOG_ID) : 0);\n\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\tType.isStringFilled(entryTitle)\n\t\t\t\t\t\t\t\t\t|| Type.isStringFilled(entryDescription)\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t&& Type.isStringFilled(entryUrl)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tconst taskDescription = this.formatTaskDescription(entryDescription, entryUrl, params.entityType, entrySuffix);\n\t\t\t\t\t\t\t\tconst taskData = {\n\t\t\t\t\t\t\t\t\tTITLE: entryTitle,\n\t\t\t\t\t\t\t\t\tDESCRIPTION: taskDescription,\n\t\t\t\t\t\t\t\t\tRESPONSIBLE_ID: Loc.getMessage('USER_ID'),\n\t\t\t\t\t\t\t\t\tCREATED_BY: Loc.getMessage('USER_ID'),\n\t\t\t\t\t\t\t\t\tUF_TASK_WEBDAV_FILES: entryDiskObjects,\n\t\t\t\t\t\t\t\t};\n\n\t\t\t\t\t\t\t\tconst sonetGroupIdList = [];\n\n\t\t\t\t\t\t\t\tfor (const [key, value] of Object.entries(groupsAvailable))\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tsonetGroupIdList.push(value);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tif (sonetGroupIdList.length == 1)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttaskData.GROUP_ID = parseInt(sonetGroupIdList[0]);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tif (parseInt(params.entityType) > 0)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\ttaskData.PARENT_ID = parseInt(params.entityType);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tajax.runComponentAction('bitrix:tasks.task', 'legacyAdd', {\n\t\t\t\t\t\t\t\t\tmode: 'class',\n\t\t\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t\t\tdata: taskData,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t}).then((response) => {\n\n\t\t\t\t\t\t\t\t\tconst resultData = response.data;\n\n\t\t\t\t\t\t\t\t\tthis.createTaskSetContentSuccess(resultData.DATA.ID);\n\n\t\t\t\t\t\t\t\t\tajax.runAction('socialnetwork.api.livefeed.createEntityComment', {\n\t\t\t\t\t\t\t\t\t\tdata: {\n\t\t\t\t\t\t\t\t\t\t\tparams: {\n\t\t\t\t\t\t\t\t\t\t\t\tpostEntityType: (Type.isStringFilled(params.postEntityType) ? params.postEntityType : params.entityType),\n\t\t\t\t\t\t\t\t\t\t\t\tsourceEntityType: params.entityType,\n\t\t\t\t\t\t\t\t\t\t\t\tsourceEntityId: params.entityId,\n\t\t\t\t\t\t\t\t\t\t\t\tentityType: 'TASK',\n\t\t\t\t\t\t\t\t\t\t\t\tentityId: resultData.DATA.ID,\n\t\t\t\t\t\t\t\t\t\t\t\tlogId: (\n\t\t\t\t\t\t\t\t\t\t\t\t\tType.isNumber(params.logId)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t? params.logId\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t: logId > 0 ? logId : null\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},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t}).then(() => {\n\t\t\t\t\t\t\t\t\t}, () => {\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}, (response) => {\n\t\t\t\t\t\t\t\t\tif (response.errors && response.errors.length)\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tconst errors = [];\n\t\t\t\t\t\t\t\t\t\tresponse.errors.forEach((error) => {\n\t\t\t\t\t\t\t\t\t\t\terrors.push(error.message);\n\t\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\t\tthis.createTaskSetContentFailure(errors);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tthis.createTaskSetContentFailure([\n\t\t\t\t\t\t\t\t\tLoc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_ERROR_GET_DATA'),\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\t\tthis.createTaskSetContentFailure([\n\t\t\t\t\t\t\t\tLoc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_ERROR_GET_DATA'),\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\tonPopupClose: () => {\n\t\t\t\t\t\tthis.createTaskPopup.destroy();\n\t\t\t\t\t},\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis.createTaskPopup.show();\n\t\t}\n\t}\n\n\tstatic getLinkWithAnalytics(link, params)\n\t{\n\t\tconst postEntityType = Type.isStringFilled(params.postEntityType) ? params.postEntityType : params.entityType;\n\n\t\tconst analyticsElement = Type.isNil(params.postEntityType) ? 'context_menu' : 'comment_context_menu';\n\t\tlet analyticsSection;\n\t\tswitch (postEntityType)\n\t\t{\n\t\t\tcase 'TASK':\n\t\t\t\tanalyticsSection = 'tasks';\n\t\t\t\tbreak;\n\t\t\tcase 'CALENDAR_EVENT':\n\t\t\t\tanalyticsSection = 'calendar';\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tanalyticsSection = 'feed';\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn BX.Uri.addParam(link, {\n\t\t\tta_sec: analyticsSection,\n\t\t\tta_el: analyticsElement\n\t\t});\n\t}\n\n\tstatic createTaskSetContentSuccess(taskId) {\n\n\t\tconst taskLink = Loc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_PATH').replace('#user_id#', Loc.getMessage('USER_ID')).replace('#task_id#', taskId);\n\n\t\tthis.createTaskPopup.destroy();\n\n\t\twindow.top.BX.UI.Notification.Center.notify({\n\t\t\tcontent: Loc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_SUCCESS_TITLE'),\n\t\t\tactions: [{\n\t\t\t\ttitle: Loc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_VIEW'),\n\t\t\t\tevents: {\n\t\t\t\t\tclick: (event, balloon, action) => {\n\t\t\t\t\t\tballoon.close();\n\t\t\t\t\t\twindow.top.BX.SidePanel.Instance.open(taskLink);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}],\n\n\t\t});\n\t}\n\n\tstatic createTaskSetContentFailure(errors)\n\t{\n\t\tthis.createTaskSetContent(Tag.render`<div>\n\t\t\t<div class=\"${this.cssClass.popupTitle}\">${Loc.getMessage('SONET_EXT_LIVEFEED_CREATE_TASK_FAILURE_TITLE')}</div>\n\t\t\t<div class=\"${this.cssClass.popupDescription}\">${errors.join('<br>')}</div>\n\t\t</div>`);\n\t}\n\n\tstatic createTaskSetContent(contentNode)\n\t{\n\t\tconst containerNode = document.getElementById('BXCTP_content');\n\t\tif (!containerNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tDom.clean(containerNode);\n\t\tcontainerNode.appendChild(contentNode);\n\t}\n\n\tstatic formatTaskDescription(taskDescription, livefeedUrl, entityType, suffix)\n\t{\n\t\tlet result = taskDescription;\n\n\t\tsuffix = (Type.isStringFilled(suffix) ? `_${suffix}` : '');\n\n\t\tif (\n\t\t\t!!livefeedUrl\n\t\t\t&& !!entityType\n\t\t\t&& livefeedUrl.length > 0\n\t\t)\n\t\t{\n\t\t\tresult += \"\\n\\n\" + Loc.getMessage(`SONET_EXT_COMMENTAUX_CREATE_TASK_${entityType}${suffix}`).replace(\n\t\t\t\t'#A_BEGIN#', `[URL=${livefeedUrl}]`\n\t\t\t).replace(\n\t\t\t\t'#A_END#', '[/URL]'\n\t\t\t);\n\t\t}\n\n\t\treturn result;\n\t}\n}\n","import {Type, Loc, Tag, Dom} from 'main.core';\nimport {Popup} from 'main.popup';\nimport {Button} from 'ui.buttons';\nimport {MenuManager} from 'main.popup';\nimport { PostForm } from 'socialnetwork.post-form';\n\nimport {FeedInstance, PinnedPanelInstance} from './feed';\nimport {TaskCreator} from './taskcreator';\n\nclass Post\n{\n\tstatic showBackgroundWarning({\n\t\turlToEdit,\n\t\tmenuPopupWindow\n\t})\n\t{\n\t\tconst content = Tag.render`<div>${Loc.getMessage('SONET_EXT_LIVEFEED_POST_BACKGROUND_EDIT_WARNING_DESCRIPTION')}</div>`;\n\n\t\tconst dialog = new Popup('backgroundWarning', null, {\n\t\t\tautoHide: true,\n\t\t\tcloseByEsc: true,\n\t\t\toffsetLeft: 0,\n\t\t\toffsetTop: 0,\n\t\t\tdraggable: true,\n\t\t\tbindOnResize: false,\n\t\t\ttitleBar: Loc.getMessage('SONET_EXT_LIVEFEED_POST_BACKGROUND_EDIT_WARNING_TITLE'),\n\t\t\tcloseIcon: true,\n\t\t\tclassName: 'sonet-livefeed-popup-warning',\n\t\t\tcontent: content,\n\t\t\tevents: {},\n\t\t\tcacheable: false,\n\t\t\tbuttons: [\n\t\t\t\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('SONET_EXT_LIVEFEED_POST_BACKGROUND_EDIT_WARNING_BUTTON_SUBMIT'),\n\t\t\t\t\tclassName: 'ui-btn ui-btn-primary',\n\t\t\t\t\tevents: {\n\t\t\t\t\t\tclick: () => {\n\t\t\t\t\t\t\twindow.location = urlToEdit;\n\t\t\t\t\t\t\tdialog.close();\n\t\t\t\t\t\t\tif (menuPopupWindow)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tmenuPopupWindow.close();\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\tnew Button({\n\t\t\t\t\ttext: Loc.getMessage('SONET_EXT_LIVEFEED_POST_BACKGROUND_EDIT_WARNING_BUTTON_CANCEL'),\n\t\t\t\t\tclassName: 'ui-btn ui-btn-light',\n\t\t\t\t\tevents : {click : () => {\n\t\t\t\t\t\tdialog.close();\n\t\t\t\t\t\tif (menuPopupWindow)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tmenuPopupWindow.close();\n\t\t\t\t\t\t}\n\t\t\t\t\t}}\n\t\t\t\t})\n\t\t\t]\n\t\t});\n\n\t\tdialog.show();\n\n\t\treturn false;\n\t}\n\n\tstatic showMenu(params)\n\t{\n\t\tif (!Type.isPlainObject(params))\n\t\t{\n\t\t\tparams = {};\n\t\t}\n\n\t\tconst menuElement = params.menuElement;\n\t\tconst ind = params.ind;\n\t\tconst menuId = this.getMenuId(ind);\n\n\t\tMenuManager.destroy(menuId);\n\n\t\tlet log_id = (!Type.isUndefined(params.log_id) ? parseInt(params.log_id) : 0);\n\n\t\tif (log_id <= 0)\n\t\t{\n\t\t\tlog_id = parseInt(menuElement.getAttribute('data-log-entry-log-id'));\n\t\t}\n\t\tif (log_id <= 0)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tlet bFavorites = params.bFavorites;\n\t\tif (Type.isUndefined(bFavorites))\n\t\t{\n\t\t\tbFavorites = (menuElement.getAttribute('data-log-entry-favorites') === 'Y');\n\t\t}\n\n\t\tlet arMenuItemsAdditional = params.arMenuItemsAdditional;\n\t\tif (Type.isUndefined(arMenuItemsAdditional))\n\t\t{\n\t\t\tarMenuItemsAdditional = menuElement.getAttribute('data-bx-items');\n\t\t\ttry\n\t\t\t{\n\t\t\t\tarMenuItemsAdditional = JSON.parse(arMenuItemsAdditional);\n\t\t\t\tif (!Type.isPlainObject(arMenuItemsAdditional))\n\t\t\t\t{\n\t\t\t\t\tarMenuItemsAdditional = {};\n\t\t\t\t}\n\t\t\t}\n\t\t\tcatch (e)\n\t\t\t{\n\t\t\t\tarMenuItemsAdditional = {};\n\t\t\t}\n\t\t}\n\n\t\tconst bindElement = params.bindElement;\n\n\t\tlet itemPinned = null;\n\t\tconst pinnedPostNode = bindElement.closest('[data-livefeed-post-pinned]');\n\t\tif (pinnedPostNode)\n\t\t{\n\t\t\tconst pinnedState = (pinnedPostNode.getAttribute('data-livefeed-post-pinned') === 'Y');\n\n\t\t\titemPinned = {\n\t\t\t\ttext : (pinnedState ? Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_PINNED_Y') : Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_PINNED_N')),\n\t\t\t\tclassName: 'menu-popup-no-icon',\n\t\t\t\tonclick: (e) => {\n\t\t\t\t\tPinnedPanelInstance.changePinned({\n\t\t\t\t\t\tlogId: log_id,\n\t\t\t\t\t\tnewState: (pinnedState ? 'N' : 'Y'),\n\t\t\t\t\t\tevent: e,\n\t\t\t\t\t\tnode: bindElement,\n\t\t\t\t\t});\n\n\t\t\t\t\tMenuManager.getMenuById(this.getMenuId(ind)).popupWindow.close();\n\t\t\t\t\te.preventDefault();\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\n\t\tconst itemFavorites = (\n\t\t\tLoc.getMessage('sonetLbUseFavorites') !== 'N'\n\t\t\t\t? {\n\t\t\t\t\ttext: (bFavorites ? Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_Y') : Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_N')),\n\t\t\t\t\tclassName: 'menu-popup-no-icon',\n\t\t\t\t\tonclick : (e) => {\n\t\t\t\t\t\t__logChangeFavorites(\n\t\t\t\t\t\t\tlog_id,\n\t\t\t\t\t\t\t`log_entry_favorites_${log_id}`,\n\t\t\t\t\t\t\t(bFavorites ? 'N' : 'Y'),\n\t\t\t\t\t\t\ttrue,\n\t\t\t\t\t\t\te\n\t\t\t\t\t\t);\n\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t: null\n\t\t);\n\n\t\tlet arItems = [\n\t\t\titemPinned,\n\t\t\titemFavorites,\n\t\t\t(\n\t\t\t\tType.isStringFilled(menuElement.getAttribute('data-log-entry-url'))\n\t\t\t\t\t? {\n\t\t\t\t\t\thtml: `<span id=\"${menuId}-href-text\">${Loc.getMessage('sonetLMenuHref')}</span>`,\n\t\t\t\t\t\tclassName: 'menu-popup-no-icon feed-entry-popup-menu feed-entry-popup-menu-href',\n\t\t\t\t\t\thref: menuElement.getAttribute('data-log-entry-url'),\n\t\t\t\t\t}\n\t\t\t\t\t: null\n\t\t\t),\n\t\t\t(\n\t\t\t\tType.isStringFilled(menuElement.getAttribute('data-log-entry-url'))\n\t\t\t\t\t? {\n\t\t\t\t\t\thtml: `<span id=\"${menuId}-link-text\">${Loc.getMessage('sonetLMenuLink')}</span>` +\n\t\t\t\t\t\t\t`<span id=\"${menuId}-link-icon-animate\" class=\"post-menu-link-icon-wrap\">` +\n\t\t\t\t\t\t\t`<span class=\"post-menu-link-icon\" id=\"${menuId}-link-icon-done\" style=\"display: none;\">` +\n\n\t\t\t\t\t\t\t'</span>' +\n\t\t\t\t\t\t\t'</span>',\n\t\t\t\t\t\tclassName : 'menu-popup-no-icon feed-entry-popup-menu feed-entry-popup-menu-link',\n\t\t\t\t\t\tonclick: (e) => {\n\n\t\t\t\t\t\t\tconst menuItemText = document.getElementById(`${menuId}-link-text`);\n\t\t\t\t\t\t\tconst menuItemIconDone = document.getElementById(`${menuId}-link-icon-done`);\n\n\t\t\t\t\t\t\tif (BX.clipboard.isCopySupported())\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tif (menuItemText && menuItemText.getAttribute('data-block-click') === 'Y')\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tBX.clipboard.copy(menuElement.getAttribute('data-log-entry-url'));\n\n\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\tmenuItemText\n\t\t\t\t\t\t\t\t\t&& menuItemIconDone\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tmenuItemIconDone.style.display = 'inline-block';\n\t\t\t\t\t\t\t\t\tdocument.getElementById(`${menuId}-link-icon-animate`).classList.remove('post-menu-link-icon-animate');\n\n\t\t\t\t\t\t\t\t\tDom.adjust(document.getElementById(`${menuId}-link-text`), {\n\t\t\t\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t\t\t\t'data-block-click': 'Y',\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\t\t\t\tdocument.getElementById(`${menuId}-link-icon-animate`).classList.add('post-menu-link-icon-animate');\n\t\t\t\t\t\t\t\t\t}, 1);\n\n\t\t\t\t\t\t\t\t\tsetTimeout(() => {\n\t\t\t\t\t\t\t\t\t\tDom.adjust(document.getElementById(`${menuId}-link-text`), {\n\t\t\t\t\t\t\t\t\t\t\tattrs: {\n\t\t\t\t\t\t\t\t\t\t\t\t'data-block-click': 'N',\n\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\t}, 500);\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tconst it = e.currentTarget;\n\t\t\t\t\t\t\tconst height = parseInt(!!it.getAttribute('bx-height') ? it.getAttribute('bx-height') : it.offsetHeight);\n\n\t\t\t\t\t\t\tif (it.getAttribute('bx-status') !== 'shown')\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tit.setAttribute('bx-status', 'shown');\n\n\t\t\t\t\t\t\t\tconst node = document.getElementById(`${menuId}-link-text`);\n\n\t\t\t\t\t\t\t\tif (!document.getElementById(`${menuId}-link`) && !!node)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tconst pos = BX.pos(node);\n\t\t\t\t\t\t\t\t\tconst pos2 = BX.pos(node.parentNode);\n\t\t\t\t\t\t\t\t\tconst pos3 = BX.pos(node.closest('.menu-popup-item'));\n\n\t\t\t\t\t\t\t\t\tpos.height = pos2.height - 1;\n\n\t\t\t\t\t\t\t\t\tDom.adjust(it, {\n\t\t\t\t\t\t\t\t\t\tattrs : {\n\t\t\t\t\t\t\t\t\t\t\t'bx-height': it.offsetHeight,\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tstyle : {\n\t\t\t\t\t\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\t\t\t\t\t\tdisplay: 'block'\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\tchildren : [\n\t\t\t\t\t\t\t\t\t\t\tDom.create('BR'),\n\t\t\t\t\t\t\t\t\t\t\tDom.create('DIV', {\n\t\t\t\t\t\t\t\t\t\t\t\tattrs : {\n\t\t\t\t\t\t\t\t\t\t\t\t\tid: `${menuId}-link`,\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\tchildren : [\n\t\t\t\t\t\t\t\t\t\t\t\t\tDom.create('SPAN', {attrs: {className: 'menu-popup-item-left'}}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tDom.create('SPAN', {attrs: {className: 'menu-popup-item-icon'}}),\n\t\t\t\t\t\t\t\t\t\t\t\t\tDom.create('SPAN', {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tattrs: {className: 'menu-popup-item-text'},\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tchildren : [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tDom.create('INPUT', {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tattrs : {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tid: `${menuId}-link-input`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\ttype: 'text',\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tvalue: menuElement.getAttribute('data-log-entry-url'),\n\t\t\t\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\t\t\tstyle : {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\theight: `${pos.height}px`,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\twidth: `${(pos3.width - 21)}px`,\n\t\t\t\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\t\t\tevents: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tclick: (e) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.currentTarget.select();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\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\t\t\t}\n\t\t\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\t]\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\t}),\n\t\t\t\t\t\t\t\t\t\t\tDom.create('SPAN', {attrs: {className: 'menu-popup-item-right'}}),\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\t\t\tEvent.bind(document.getElementById(`${menuId}-link-input`), 'click', (e) => {\n\t\t\t\t\t\t\t\t\t\te.currentTarget.select();\n\t\t\t\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t\t\t\t\te.stopPropagation()\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t(new BX.fx({\n\t\t\t\t\t\t\t\t\ttime: 0.2,\n\t\t\t\t\t\t\t\t\tstep: 0.05,\n\t\t\t\t\t\t\t\t\ttype: 'linear',\n\t\t\t\t\t\t\t\t\tstart: height,\n\t\t\t\t\t\t\t\t\tfinish: height * 2,\n\t\t\t\t\t\t\t\t\tcallback: function (height) {\n\t\t\t\t\t\t\t\t\t\tthis.style.height = `${height}px`;\n\t\t\t\t\t\t\t\t\t}.bind(it),\n\t\t\t\t\t\t\t\t})).start();\n\t\t\t\t\t\t\t\tBX.fx.show(document.getElementById(`${menuId}-link`), 0.2);\n\t\t\t\t\t\t\t\tdocument.getElementById(`${menuId}-link-input`).select();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tit.setAttribute('bx-status', 'hidden');\n\t\t\t\t\t\t\t\t(new BX.fx({\n\t\t\t\t\t\t\t\t\ttime: 0.2,\n\t\t\t\t\t\t\t\t\tstep: 0.05,\n\t\t\t\t\t\t\t\t\ttype: 'linear',\n\t\t\t\t\t\t\t\t\tstart: it.offsetHeight,\n\t\t\t\t\t\t\t\t\tfinish: height,\n\t\t\t\t\t\t\t\t\tcallback: function(height) {\n\t\t\t\t\t\t\t\t\t\tthis.style.height = `${height}px`;\n\t\t\t\t\t\t\t\t\t}.bind(it),\n\t\t\t\t\t\t\t\t})).start();\n\t\t\t\t\t\t\t\tBX.fx.hide(document.getElementById(`${menuId}-link`), 0.2);\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\t: null\n\t\t\t),\n\t\t\t(\n\t\t\t\tLoc.getMessage('sonetLCanDelete') === 'Y'\n\t\t\t\t\t? {\n\t\t\t\t\t\ttext: Loc.getMessage('sonetLMenuDelete'),\n\t\t\t\t\t\tclassName: 'menu-popup-no-icon',\n\t\t\t\t\t\tonclick: (e) => {\n\t\t\t\t\t\t\tif (confirm(Loc.getMessage('sonetLMenuDeleteConfirm')))\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tFeedInstance.delete({\n\t\t\t\t\t\t\t\t\tlogId: log_id,\n\t\t\t\t\t\t\t\t\tnodeId: `log-entry-${log_id}`,\n\t\t\t\t\t\t\t\t\tind: ind,\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\te.stopPropagation();\n\t\t\t\t\t\t\te.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t} : null\n\t\t\t),\n\t\t\t(\n\t\t\t\tmenuElement.getAttribute('data-log-entry-createtask') === 'Y'\n\t\t\t\t\t? {\n\t\t\t\t\t\ttext: Loc.getMessage('sonetLMenuCreateTask'),\n\t\t\t\t\t\tclassName: 'menu-popup-no-icon',\n\t\t\t\t\t\tonclick: (e) => {\n\t\t\t\t\t\t\tTaskCreator.create({\n\t\t\t\t\t\t\t\tentryEntityType: menuElement.getAttribute('data-log-entry-entity-type'),\n\t\t\t\t\t\t\t\tentityType: menuElement.getAttribute('data-log-entry-entity-type'),\n\t\t\t\t\t\t\t\tentityId: menuElement.getAttribute('data-log-entry-entity-id'),\n\t\t\t\t\t\t\t\tlogId: parseInt(menuElement.getAttribute('data-log-entry-log-id')),\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tMenuManager.getMenuById(this.getMenuId(ind)).popupWindow.close();\n\t\t\t\t\t\t\treturn e.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t: null\n\t\t\t),\n\t\t\t(\n\t\t\t\tmenuElement.getAttribute('data-log-entry-createtask') === 'Y'\n\t\t\t\t&& menuElement.getAttribute('data-log-entry-entity-type') === 'TASK'\n\t\t\t\t\t? {\n\t\t\t\t\t\ttext: Loc.getMessage('sonetLMenuCreateSubTask'),\n\t\t\t\t\t\tclassName: 'menu-popup-no-icon',\n\t\t\t\t\t\tonclick: (e) => {\n\t\t\t\t\t\t\tTaskCreator.create({\n\t\t\t\t\t\t\t\tentryEntityType: menuElement.getAttribute('data-log-entry-entity-type'),\n\t\t\t\t\t\t\t\tentityType: menuElement.getAttribute('data-log-entry-entity-type'),\n\t\t\t\t\t\t\t\tentityId: menuElement.getAttribute('data-log-entry-entity-id'),\n\t\t\t\t\t\t\t\tlogId: parseInt(menuElement.getAttribute('data-log-entry-log-id')),\n\t\t\t\t\t\t\t\tparentTaskId: parseInt(menuElement.getAttribute('data-log-entry-entity-id')),\n\t\t\t\t\t\t\t});\n\n\t\t\t\t\t\t\tMenuManager.getMenuById(this.getMenuId(ind)).popupWindow.close();\n\t\t\t\t\t\t\treturn e.preventDefault();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t: null\n\t\t\t),\n\t\t];\n\n\t\tif (\n\t\t\t!!arMenuItemsAdditional\n\t\t\t&& Type.isArray(arMenuItemsAdditional)\n\t\t)\n\t\t{\n\t\t\tarMenuItemsAdditional.forEach((item) => {\n\t\t\t\tif (Type.isUndefined(item.className))\n\t\t\t\t{\n\t\t\t\t\titem.className = 'menu-popup-no-icon';\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tarItems = arItems.concat(arMenuItemsAdditional);\n\t\t}\n\n\t\tconst arParams = {\n\t\t\toffsetLeft: -14,\n\t\t\toffsetTop: 4,\n\t\t\tlightShadow: false,\n\t\t\tangle: {\n\t\t\t\tposition: 'top',\n\t\t\t\toffset : 50,\n\t\t\t},\n\t\t\tevents: {\n\t\t\t\tonPopupShow: (ob) => {\n\t\t\t\t\tif (document.getElementById(`log_entry_favorites_${log_id}`))\n\t\t\t\t\t{\n\t\t\t\t\t\tlet favoritesMenuItem = null;\n\n\t\t\t\t\t\tconst menuItems = ob.contentContainer.querySelectorAll('.menu-popup-item-text');\n\t\t\t\t\t\tmenuItems.forEach((menuItem) => {\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\tmenuItem.innerHTML === Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_Y')\n\t\t\t\t\t\t\t\t|| menuItem.innerHTML === Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_N')\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfavoritesMenuItem = menuItem;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\n\t\t\t\t\t\tif (Type.isDomNode(favoritesMenuItem))\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tfavoritesMenuItem.innerHTML = (\n\t\t\t\t\t\t\t\tdocument.getElementById(`log_entry_favorites_${log_id}`).classList.contains('feed-post-important-switch-active')\n\t\t\t\t\t\t\t\t\t? Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_Y')\n\t\t\t\t\t\t\t\t\t: Loc.getMessage('SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_N')\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tif (document.getElementById(`${menuId}-link`))\n\t\t\t\t\t{\n\t\t\t\t\t\tconst linkMenuItem = ob.popupContainer.querySelector('.feed-entry-popup-menu-link');\n\t\t\t\t\t\tif (linkMenuItem)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tconst height = parseInt(!!linkMenuItem.getAttribute('bx-height') ? linkMenuItem.getAttribute('bx-height') : 0);\n\t\t\t\t\t\t\tif (height > 0)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tdocument.getElementById(`${menuId}-link`).style.display = 'none';\n\t\t\t\t\t\t\t\tlinkMenuItem.setAttribute('bx-status', 'hidden');\n\t\t\t\t\t\t\t\tlinkMenuItem.style.height = `${height}px`;\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\n\t\tMenuManager.show(this.getMenuId(ind), bindElement, arItems, arParams);\n\t}\n\n\tstatic getMenuId(ind)\n\t{\n\t\treturn `post-menu-${ind}`;\n\t}\n\n\tstatic editSpacesPost(postId: number, groupId: number)\n\t{\n\t\tconst postForm = new PostForm({\n\t\t\tpostId,\n\t\t\tgroupId,\n\t\t});\n\n\t\tpostForm.show();\n\t}\n}\n\nexport {\n\tPost\n};","import { Loc, Type, Runtime } from 'main.core';\nimport { BaseEvent, EventEmitter } from 'main.core.events';\n\nclass Informer\n{\n\tconstructor()\n\t{\n\t\tthis.container = null;\n\t\tthis.wrap = null;\n\t\tthis.plus = null;\n\t\tthis.value = null;\n\n\t\tthis.currentSiteId = null;\n\t\tthis.currentCounterType = null;\n\n\t\tthis.counterDecrementStack = 0;\n\t\tthis.counterValue = 0;\n\n\t\tthis.lockCounterAnimation = null;\n\n\t\tthis.isSpaceFeatureEnabled = null;\n\t\tthis.currentUserId = null;\n\t\tthis.currentSpaceId = null;\n\n\t\tthis.class = {\n\t\t\tinformerFixed: 'feed-new-message-informer-fixed',\n\t\t\tinformerAnimation: 'feed-new-message-informer-anim',\n\t\t\tinformerFixedAnimation: 'feed-new-message-informer-fix-anim',\n\t\t\tcounterText: 'feed-new-message-inf-text',\n\t\t\tcounterContainer: 'feed-new-message-inf-text-counter',\n\t\t\treloadContainer: 'feed-new-message-inf-text-reload',\n\t\t\ticon: 'feed-new-message-icon',\n\t\t\ticonRotating: 'new-message-balloon-icon-rotating',\n\t\t\tplusHidden: 'feed-new-message-informer-counter-plus-hidden',\n\t\t};\n\t}\n\n\tinit(props = {})\n\t{\n\t\tconst defaultValues = { isSpaceFeatureEnabled: false, userId: null, spaceId: null };\n\t\tconst { isSpaceFeatureEnabled, userId, spaceId } = props || defaultValues;\n\t\tthis.isSpaceFeatureEnabled = isSpaceFeatureEnabled;\n\t\tthis.currentUserId = userId;\n\t\tthis.currentSpaceId = spaceId;\n\t\tthis.initNodes();\n\t\tthis.initEvents();\n\t}\n\n\tinitNodes()\n\t{\n\t\tthis.currentCounterType = Loc.hasMessage('sonetLCounterType') ? Loc.getMessage('sonetLCounterType') : '**';\n\t\tthis.currentSiteId = Loc.getMessage('SITE_ID');\n\n\t\tthis.container = document.getElementById('sonet_log_counter_2_container');\n\t\tif (this.container)\n\t\t{\n\t\t\tthis.container.addEventListener('click', this.showReloadAnimation.bind(this));\n\t\t}\n\n\t\tthis.wrap = document.getElementById('sonet_log_counter_2_wrap');\n\t\tthis.plus = document.getElementById('sonet_log_counter_2_plus');\n\t\tthis.value = document.getElementById('sonet_log_counter_2');\n\t}\n\n\tinitEvents()\n\t{\n\t\tEventEmitter.subscribe('onGoUp', (event: BaseEvent) =>\n\t\t{\n\t\t\tthis.unfixWrap();\n\t\t});\n\n\t\t(this.isSpaceFeatureEnabled)\n\t\t\t? this.subscribeOnSpaceCounters()\n\t\t\t: this.subscribeOnLiveFeedCounters()\n\t\t;\n\n\t\tEventEmitter.subscribe('onImUpdateCounter', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [counterData] = event.getCompatData();\n\n\t\t\tif (\n\t\t\t\tthis.isSpaceFeatureEnabled\n\t\t\t\t|| !Type.isObjectLike(counterData)\n\t\t\t\t|| Type.isUndefined(counterData[this.currentCounterType])\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.changeCounter(counterData[this.currentCounterType]);\n\t\t});\n\n\t\tEventEmitter.subscribe('OnUCCommentWasRead', (event: BaseEvent) =>\n\t\t{\n\t\t\tif (this.isSpaceFeatureEnabled)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst [ xmlId, id, options ] = event.getData();\n\n\t\t\tif (\n\t\t\t\t!Type.isObjectLike(options)\n\t\t\t\t|| !options.live\n\t\t\t\t|| !options.new\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tEventEmitter.emit('onCounterDecrement', new BaseEvent({\n\t\t\t\tcompatData: [1],\n\t\t\t}));\n\n\t\t\tthis.decrementCounter(1);\n\t\t});\n\t};\n\n\tsubscribeOnSpaceCounters()\n\t{\n\t\tEventEmitter.subscribe('onPullEvent-socialnetwork', (event: BaseEvent) => {\n\t\t\tconst [command, eventParams] = event.getData();\n\t\t\tconst userFromEvent = eventParams.userId ?? null;\n\t\t\tconst spaces = eventParams.spaces ?? [];\n\n\t\t\tif (\n\t\t\t\tcommand !== 'user_spaces_counter'\n\t\t\t\t|| parseInt(this.currentUserId) !== parseInt(userFromEvent)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst currentSpace = spaces.find((space) => space.id === parseInt(this.currentSpaceId));\n\t\t\tconst currentSpaceCounter = (currentSpace && currentSpace.metrics && currentSpace.metrics.countersLiveFeedTotal)\n\t\t\t\t? currentSpace.metrics.countersLiveFeedTotal\n\t\t\t\t: 0\n\t\t\t;\n\t\t\tthis.changeCounter(currentSpaceCounter);\n\t\t});\n\t};\n\n\tsubscribeOnLiveFeedCounters()\n\t{\n\t\tEventEmitter.subscribe('onPullEvent-main', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ command, eventParams ] = event.getData();\n\n\t\t\tif (\n\t\t\t\tcommand !== 'user_counter'\n\t\t\t\t|| !eventParams[this.currentSiteId]\n\t\t\t\t|| !eventParams[this.currentSiteId][this.currentCounterType]\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tthis.changeCounter(Runtime.clone(eventParams[this.currentSiteId][this.currentCounterType]));\n\t\t});\n\t};\n\n\tchangeCounter(count)\n\t{\n\t\tthis.counterValue = parseInt(count);\n\n\t\tif (this.counterValue <= 0)\n\t\t{\n\t\t\tthis.counterDecrementStack = 0;\n\t\t}\n\n\t\tconst valueToShow = this.counterValue - this.counterDecrementStack;\n\n\t\tthis.changeAnimate({\n\t\t\tshow: (valueToShow > 0),\n\t\t\tcounter: valueToShow,\n\t\t\tzeroCounterFromDb: (valueToShow <= 0),\n\t\t});\n\t};\n\n\tchangeAnimate(params)\n\t{\n\t\tconst show = (!!params.show);\n\t\tconst counterValue = parseInt(params.counter);\n\t\tconst zeroCounterFromDb = !!params.zeroCounterFromDb;\n\n\t\tif (!this.container)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst counterTextNode = this.container.querySelector(`span.${this.class.counterText}`);\n\t\tconst reloadNode = this.container.querySelector(`span.${this.class.reloadContainer}`);\n\n\t\tif (this.lockCounterAnimation)\n\t\t{\n\t\t\tsetTimeout(() => {\n\t\t\t\tthis.changeAnimate({\n\t\t\t\t\tshow: show,\n\t\t\t\t\tcounter: counterValue,\n\t\t\t\t})\n\t\t\t}, 200);\n\n\t\t\treturn false;\n\t\t}\n\n\t\tif (show)\n\t\t{\n\t\t\tif (this.value)\n\t\t\t{\n\t\t\t\tthis.value.innerHTML = counterValue;\n\t\t\t}\n\n\t\t\tthis.showWrapAnimation();\n\n\t\t\tif (\n\t\t\t\tthis.plus\n\t\t\t\t&& reloadNode\n\t\t\t\t&& !reloadNode.classList.contains('--hidden')\n\t\t\t\t&& counterTextNode\n\t\t\t)\n\t\t\t{\n\t\t\t\treloadNode.classList.add('--hidden');\n\t\t\t\tcounterTextNode.classList.remove('--hidden');\n\t\t\t\tthis.plus.classList.remove(`${this.class.plusHidden}`);\n\t\t\t}\n\t\t}\n\t\telse if (this.wrap)\n\t\t{\n\t\t\tif (\n\t\t\t\tzeroCounterFromDb\n\t\t\t\t&& this.wrap.classList.contains(`${this.class.informerAnimation}`)\n\t\t\t)\n\t\t\t{\n\t\t\t\tif (\n\t\t\t\t\tcounterTextNode\n\t\t\t\t\t&& reloadNode\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\tcounterTextNode.classList.add('--hidden');\n\t\t\t\t\treloadNode.classList.remove('--hidden');\n\n\t\t\t\t\tthis.hideReloadAnimation();\n\t\t\t\t}\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.hideWrapAnimation();\n\t\t\t\t}, 400);\n\t\t\t}\n\t\t}\n\t};\n\n\tshowWrapAnimation()\n\t{\n\t\tif (!this.wrap)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrap.style.visibility = 'visible';\n\t\tthis.wrap.classList.add(`${this.class.informerAnimation}`);\n\t};\n\n\thideWrapAnimation()\n\t{\n\t\tif (!this.wrap)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrap.classList.remove(`${this.class.informerAnimation}`);\n\t\tthis.wrap.style.visibility = 'hidden';\n\t}\n\n\tshowReloadAnimation()\n\t{\n\t\tif (!this.container)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst counterWaiterNode = this.container.querySelector(`span.${this.class.icon}`);\n\t\tif (counterWaiterNode)\n\t\t{\n\t\t\tcounterWaiterNode.classList.add(this.class.iconRotating);\n\t\t}\n\t}\n\n\thideReloadAnimation()\n\t{\n\t\tif (!this.container)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst counterNodeWaiter = this.container.querySelector(`span.${this.class.icon}`);\n\t\tif (counterNodeWaiter)\n\t\t{\n\t\t\tcounterNodeWaiter.classList.remove(this.class.iconRotating);\n\t\t}\n\t}\n\n\tonFeedScroll()\n\t{\n\t\tif (\n\t\t\t!this.container\n\t\t\t|| !this.wrap\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst top = this.wrap.parentNode.getBoundingClientRect().top;\n//\t\tconst counterRect = this.container.getBoundingClientRect();\n\n\t\tif (top <= 53)\n\t\t{\n/*\n\t\t\tif (!this.wrap.classList.contains(`${this.class.informerFixed}`))\n\t\t\t{\n\t\t\t\tthis.container.style.left = `${(counterRect.left + (counterRect.width / 2))}px`;\n\t\t\t}\n*/\n\t\t\tthis.fixWrap();\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.unfixWrap();\n//\t\t\tthis.container.style.left = 'auto';\n\t\t}\n\t};\n\n\tfixWrap()\n\t{\n\t\tif (!this.wrap)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrap.classList.add(`${this.class.informerFixed}`, `${this.class.informerFixedAnimation}`);\n\t}\n\n\tunfixWrap()\n\t{\n\t\tif (!this.wrap)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.wrap.classList.remove(`${this.class.informerFixed}`, `${this.class.informerFixedAnimation}`);\n\t};\n\n\trecover()\n\t{\n\t\tif (!this.container)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst counterContainerNode = this.container.querySelector(`span.${this.class.counterContainer}`);\n\n\t\tif (!counterContainerNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tcounterContainerNode.classList.remove('--hidden');\n\t\tthis.hideReloadNode();\n\n\t\tif (this.plus)\n\t\t{\n\t\t\tthis.plus.classList.add(`${this.class.plusHidden}`);\n\t\t}\n\t};\n\n\thideReloadNode()\n\t{\n\t\tif (!this.container)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst reloadNode = this.container.querySelector(`span.${this.class.reloadContainer}`);\n\n\t\tif (!reloadNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\treloadNode.classList.add('--hidden');\n\t};\n\n\tdecrementCounter(value)\n\t{\n\t\tthis.counterDecrementStack += parseInt(value);\n\n\t\tif (!this.value)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst counterValue = this.counterValue - this.counterDecrementStack;\n\t\tif (counterValue > 0)\n\t\t{\n\t\t\tthis.value.innerHTML = counterValue;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tthis.changeAnimate({\n\t\t\t\tshow: false,\n\t\t\t\tcounter: 0,\n\t\t\t});\n\t\t}\n\t}\n\n\tgetWrap()\n\t{\n\t\treturn this.wrap;\n\t}\n}\n\nexport {\n\tInformer\n};\n","export class Loader\n{\n\tstatic cssClass = {\n\t\tfeedMask: 'log-internal-mask',\n\t\tfeedNoMask: 'log-internal-nomask',\n\t\tshowLoader: 'livefeed-show-loader',\n\t\thideLoader: 'livefeed-hide-loader',\n\t};\n\n\tstatic onAnimationEnd = (event) => {\n\t\tif (\n\t\t\t'animationName' in event\n\t\t\t&& event.animationName\n\t\t\t&& event.animationName === 'hideLoader'\n\t\t)\n\t\t{\n\t\t\tconst loaderContainer = document.getElementById('feed-loader-container');\n\t\t\tif (!loaderContainer)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tloaderContainer.classList.remove(this.cssClass.showLoader);\n\t\t\tloaderContainer.classList.remove(this.cssClass.hideLoader);\n\t\t\tloaderContainer.style.display = '';\n\t\t}\n\t}\n\n\tstatic showRefreshFade()\n\t{\n\t\tconst feedContainer = document.getElementById('log_internal_container');\n\t\tif (feedContainer)\n\t\t{\n\t\t\tfeedContainer.classList.add(this.cssClass.feedMask);\n\t\t\tfeedContainer.classList.remove(this.cssClass.feedNoMask);\n\t\t}\n\n\t\tconst loaderContainer = document.getElementById('feed-loader-container');\n\t\tif (loaderContainer)\n\t\t{\n\t\t\tloaderContainer.style.display = 'block';\n\t\t\tloaderContainer.classList.remove(this.cssClass.hideLoader);\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tloaderContainer.classList.add(this.cssClass.showLoader);\n\t\t\t}, 0);\n\t\t}\n\t}\n\n\tstatic hideRefreshFade()\n\t{\n\t\tconst feedContainer = document.getElementById('log_internal_container');\n\t\tif (feedContainer)\n\t\t{\n\t\t\tfeedContainer.classList.remove(this.cssClass.feedMask);\n\t\t\tfeedContainer.classList.add(this.cssClass.feedNoMask);\n\t\t}\n\n\t\tconst loaderContainer = document.getElementById('feed-loader-container');\n\t\tif (loaderContainer)\n\t\t{\n\t\t\tloaderContainer.classList.remove(this.cssClass.showLoader);\n\t\t\tloaderContainer.classList.add(this.cssClass.hideLoader);\n\t\t}\n\t}\n}\n","import {Type, Event} from 'main.core';\nimport {BaseEvent, EventEmitter} from 'main.core.events';\n\nimport {FeedInstance} from './feed';\n\nexport class MoreButton\n{\n\tstatic cssClass = {\n\t\tpost: 'feed-post-block',\n\t\tpostShort: 'feed-post-block-short',\n\t\tpostSeparator: 'feed-post-block-separator',\n\t\tpostText: 'feed-post-text-block',\n\t\tpostTextInner: 'feed-post-text-block-inner',\n\t\tpostTextInnerInner: 'feed-post-text-block-inner-inner',\n\t\tmore: 'feed-post-text-more',\n\t\tcomment: 'feed-com-text',\n\t};\n\n\tconstructor()\n\t{\n\t\tEventEmitter.subscribe(\n\t\t\t'BX.Livefeed:recalculateComments',\n\t\t\tthis.onRecalculateLivefeedComments.bind(this)\n\t\t);\n\t}\n\n\tonRecalculateLivefeedComments(baseEvent: BaseEvent)\n\t{\n\t\tconst [ data ] = baseEvent.getCompatData();\n\t\tif (!Type.isDomNode(data.rootNode))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst informerBlock = data.rootNode;\n\n\t\tconst moreBlock = informerBlock.querySelector(`.${MoreButton.cssClass.more}`);\n\t\tif (moreBlock)\n\t\t{\n\t\t\tinformerBlock.classList.remove(MoreButton.cssClass.postSeparator);\n\t\t}\n\n\t\tMoreButton.recalcPost({\n\t\t\tarPos: { height: (data.rootNode.offsetHeight + data.rootNode.offsetTop) },\n\t\t\tinformerBlock\n\t\t});\n\t}\n\n\tstatic recalcPost(params)\n\t{\n\t\tif (!Type.isDomNode(params.informerBlock))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst blockHeight = (!Type.isUndefined(params.arPos) ? params.arPos.height : params.bodyBlock.offsetHeight);\n\n\t\tconst postBlock = params.informerBlock.closest(`.${this.cssClass.post}`);\n\t\tif (!postBlock)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tif (blockHeight <= 284)\n\t\t{\n\t\t\tpostBlock.classList.add(this.cssClass.postShort)\n\t\t\tpostBlock.classList.add(this.cssClass.postSeparator)\n\t\t}\n\t\telse\n\t\t{\n\t\t\tpostBlock.classList.remove(this.cssClass.postShort)\n\t\t}\n\t}\n\n\tstatic recalcPostsList()\n\t{\n\t\tconst buttonsList = FeedInstance.getMoreButtons();\n\t\tbuttonsList.forEach((buttonData, key) => {\n\n\t\t\tif (\n\t\t\t\t!Type.isPlainObject(buttonData)\n\t\t\t\t|| !Type.isStringFilled(buttonData.bodyBlockID)\n\t\t\t)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst bodyNode = document.getElementById(buttonData.bodyBlockID)\n\t\t\tif (!bodyNode)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (Type.isStringFilled(buttonData.outerBlockID))\n\t\t\t{\n\t\t\t\tconst outerNode = document.getElementById(buttonData.outerBlockID);\n\t\t\t\tif (outerNode)\n\t\t\t\t{\n\t\t\t\t\tif (outerNode.offsetWidth < bodyNode.offsetWidth)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst innerNode = outerNode.querySelector(`div.${this.cssClass.postTextInner}`);\n\t\t\t\t\t\tinnerNode.style.overflowX = 'scroll';\n\t\t\t\t\t}\n\n\t\t\t\t\tconst moreButton = outerNode.querySelector(`.${this.cssClass.more}`);\n\t\t\t\t\tif (moreButton)\n\t\t\t\t\t{\n\t\t\t\t\t\tEvent.unbindAll(moreButton, 'click');\n\t\t\t\t\t\tEvent.bind(moreButton, 'click', (e) => {\n\n\t\t\t\t\t\t\tBX.UI.Animations.expand({\n\t\t\t\t\t\t\t\tmoreButtonNode: e.currentTarget,\n\t\t\t\t\t\t\t\ttype: 'post',\n\t\t\t\t\t\t\t\tclassBlock: this.cssClass.postText,\n\t\t\t\t\t\t\t\tclassOuter: this.cssClass.postTextInner,\n\t\t\t\t\t\t\t\tclassInner: this.cssClass.postTextInnerInner,\n\t\t\t\t\t\t\t\theightLimit: 300,\n\t\t\t\t\t\t\t\tcallback: (textBlock) => {\n\t\t\t\t\t\t\t\t\tthis.expand(textBlock);\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\tmoreButton.hasClickListener = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.recalcPost({\n\t\t\t\tarPos: { height: (bodyNode.offsetHeight + bodyNode.offsetTop)},\n\t\t\t\tinformerBlock: (Type.isStringFilled(buttonData.informerBlockID) ? document.getElementById(buttonData.informerBlockID) : null)\n\t\t\t});\n\t\t\tbuttonsList.delete(key);\n\t\t});\n\n\t\tFeedInstance.setMoreButtons(buttonsList);\n\n\t\tconst feedContainer = document.getElementById('log_internal_container');\n\t\tif (!feedContainer)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst onLoadImageList = feedContainer.querySelectorAll('[data-bx-onload=\"Y\"]');\n\t\tonLoadImageList.forEach((imageNode) => {\n\t\t\timageNode.addEventListener('load', (e) => {\n\n\t\t\t\tlet outerBlock = e.currentTarget.closest(`.${this.cssClass.comment}`);\n\t\t\t\tif (!outerBlock) // post\n\t\t\t\t{\n\t\t\t\t\touterBlock = e.currentTarget.closest(`.${this.cssClass.post}`);\n\t\t\t\t\tif (outerBlock)\n\t\t\t\t\t{\n\t\t\t\t\t\tconst bodyBlock = outerBlock.querySelector(`.${this.cssClass.postTextInnerInner}`);\n\t\t\t\t\t\tif (bodyBlock)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tthis.recalcPost({\n\t\t\t\t\t\t\t\tbodyBlock: bodyBlock,\n\t\t\t\t\t\t\t\tinformerBlock: outerBlock.querySelector(`.${this.cssClass.more}`),\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\n\t\t\t\te.currentTarget.setAttribute('data-bx-onload', 'N');\n\t\t\t});\n\t\t});\n\t}\n\n\tstatic recalcCommentsList()\n\t{\n\t\tEventEmitter.emit('OnUCMoreButtonListRecalc', new BaseEvent({\n\t\t\tcompatData: [],\n\t\t}));\n\t}\n\n\tstatic clearCommentsList()\n\t{\n\t\tEventEmitter.emit('OnUCMoreButtonListClear', new BaseEvent({\n\t\t\tcompatData: [],\n\t\t}));\n\t}\n\n\tstatic expand(textBlock)\n\t{\n\t\tif (!Type.isDomNode(textBlock))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst postBlock = textBlock.closest(`.${this.cssClass.post}`);\n\t\tif (!postBlock)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tpostBlock.classList.add(this.cssClass.postShort);\n\t\tpostBlock.classList.add(this.cssClass.postSeparator);\n\t}\n\n\t/*\n\tis not used actually by disk uf\n\t*/\n\tstatic lazyLoadCheckVisibility(image)\n\t{\n\t\tif (\n\t\t\t!Type.isPlainObject(image)\n\t\t\t|| !Type.isDomNode(image.node)\n\t\t)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tconst imageNode = image.node;\n\n\t\tlet textType = 'comment';\n\n\t\tlet textBlock = imageNode.closest(`.${this.cssClass.comment}`);\n\t\tif (!textBlock)\n\t\t{\n\t\t\ttextType = 'post';\n\t\t\ttextBlock = imageNode.closest(`.${this.cssClass.postText}`);\n\t\t}\n\n\t\tif (!textBlock)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\tconst moreBlock = textBlock.querySelector(`div.${this.cssClass.more}`);\n\t\tif (\n\t\t\t!moreBlock\n\t\t\t|| moreBlock.style.display === 'none'\n\t\t)\n\t\t{\n\t\t\treturn true;\n\t\t}\n\n\t\treturn imageNode.parentNode.parentNode.offsetTop < (textType === 'comment' ? 220 : 270);\n\t}\n}\n","import {Type} from 'main.core';\nimport {BaseEvent} from 'main.core.events';\n\nimport {MoreButton} from './morebutton';\n\nexport class Forum\n{\n\tstatic cssClass = {\n\t};\n\n\tstatic processSpoilerToggle(event: BaseEvent)\n\t{\n\t\tlet [ params ] = event.getCompatData();\n\t\tif (!Type.isPlainObject(params))\n\t\t{\n\t\t\tparams = {};\n\t\t}\n\n\t\tif (!Type.isDomNode(params.node))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst outerBlock = params.node.closest('.feed-post-block');\n\t\tif (!outerBlock)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst bodyBlock = outerBlock.querySelector('.feed-post-text-block-inner-inner');\n\t\tif (!bodyBlock)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tconst moreBlock = outerBlock.querySelector('.feed-post-text-more');\n\n\t\tMoreButton.recalcPost({\n\t\t\tbodyBlock: bodyBlock,\n\t\t\tinformerBlock: moreBlock,\n\t\t});\n\t}\n}\n","import {Type} from 'main.core';\nimport {BaseEvent, EventEmitter} from 'main.core.events';\n\nimport {Loader} from './loader';\nimport {PageInstance} from './feed';\n\nclass Filter\n{\n\tconstructor()\n\t{\n\t\tthis.filterId = '';\n\t\tthis.filterApi = null;\n\t}\n\n\tinit(params)\n\t{\n\t\tif (!Type.isPlainObject(params))\n\t\t{\n\t\t\tparams = {};\n\t\t}\n\n\t\tif (\n\t\t\tType.isStringFilled(params.filterId)\n\t\t\t&& !Type.isUndefined(BX.Main)\n\t\t\t&& !Type.isUndefined(BX.Main.filterManager)\n\t\t)\n\t\t{\n\t\t\tconst filterManager = BX.Main.filterManager.getById(params.filterId);\n\t\t\tthis.filterId = params.filterId;\n\n\t\t\tif(filterManager)\n\t\t\t{\n\t\t\t\tthis.filterApi = filterManager.getApi();\n\t\t\t}\n\t\t}\n\n\t\tthis.initEvents();\n\t}\n\n\tinitEvents()\n\t{\n\t\tEventEmitter.subscribe('BX.Livefeed.Filter:beforeApply', (event: BaseEvent) =>\n\t\t{\n\t\t\tLoader.showRefreshFade();\n\t\t});\n\n\t\tEventEmitter.subscribe('BX.Livefeed.Filter:apply', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ filterValues, filterPromise, filterParams ] = event.getCompatData();\n\n\t\t\tif (typeof filterParams != 'undefined')\n\t\t\t{\n\t\t\t\tfilterParams.autoResolve = false;\n\t\t\t}\n\t\t\tPageInstance.refresh({\n\t\t\t\tuseBXMainFilter: 'Y',\n\t\t\t}, filterPromise);\n\t\t});\n\n\t\tEventEmitter.subscribe('BX.Livefeed.Filter:searchInput', (event: BaseEvent) =>\n\t\t{\n\t\t\tconst [ searchString ] = event.getCompatData();\n\n\t\t\tif (Type.isStringFilled(searchString))\n\t\t\t{\n\t\t\t\tLoader.showRefreshFade();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tLoader.hideRefreshFade();\n\t\t\t}\n\t\t});\n\t}\n\n\tinitEventsCrm()\n\t{\n\t\tEventEmitter.subscribe('BX.Livefeed.Filter:searchInput', () => {\n\t\t\tPageInstance.refresh();\n\t\t});\n\t}\n\n\tclickTag(tagValue)\n\t{\n\t\tif (\n\t\t\t!Type.isStringFilled(tagValue)\n\t\t\t|| !this.filterApi\n\t\t)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.filterApi.setFields({\n\t\t\tTAG: tagValue\n\t\t});\n\t\tthis.filterApi.apply();\n\n\t\tif (\n\t\t\tType.isStringFilled(this.filterId)\n\t\t\t&& !Type.isUndefined(BX.Main)\n\t\t\t&& !Type.isUndefined(BX.Main.filterManager)\n\t\t)\n\t\t{\n\t\t\tconst filterContainer = document.getElementById(`${this.filterId}_filter_container`);\n\t\t\tif (\n\t\t\t\tfilterContainer\n\t\t\t\t&& BX.Main.filterManager.getById(this.filterId)\n\t\t\t\t&& (\n\t\t\t\t\tBX.Main.filterManager.getById(this.filterId).getSearch().getSquares().length > 0\n\t\t\t\t\t|| BX.Main.filterManager.getById(this.filterId).getSearch().getSearchString().length > 0\n\t\t\t\t)\n\t\t\t)\n\t\t\t{\n\t\t\t\tconst pagetitleContainer = filterContainer.closest('.pagetitle-wrap');\n\t\t\t\tif (pagetitleContainer)\n\t\t\t\t{\n\t\t\t\t\tpagetitleContainer.classList.add('pagetitle-wrap-filter-opened');\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t(new BX.easing({\n\t\t\tduration: 500,\n\t\t\tstart: { scroll: window.pageYOffset },\n\t\t\tfinish: { scroll: 0 },\n\t\t\ttransition: BX.easing.makeEaseOut(BX.easing.transitions.quart),\n\t\t\tstep: (state) => {\n\t\t\t\twindow.scrollTo(0, state.scroll);\n\t\t\t},\n\t\t\tcomplete: () => {}\n\t\t})).animate();\n\n\t\treturn true;\n\t}\n}\n\nexport {\n\tFilter,\n};","import { ajax, Type, Loc, Dom, Tag } from 'main.core';\nimport { Popup } from 'main.popup';\n\nexport class ContentView\n{\n\tstatic registerAreaList()\n\t{\n\t\tvar\n\t\t\tcontainer = BX('log_internal_container'),\n\t\t\tfullContentArea = null;\n\n\t\tif (container)\n\t\t{\n\t\t\tvar viewAreaList = BX.findChildren(container, {\n\t\t\t\ttag: 'div',\n\t\t\t\tclassName: 'feed-post-contentview'\n\t\t\t}, true);\n\t\t\tfor (var i = 0, length = viewAreaList.length; i < length; i++)\n\t\t\t{\n\t\t\t\tif (viewAreaList[i].id.length > 0)\n\t\t\t\t{\n\t\t\t\t\tfullContentArea = BX.findChild(viewAreaList[i], {\n\t\t\t\t\t\ttag: 'div',\n\t\t\t\t\t\tclassName: 'feed-post-text-block-inner-inner'\n\t\t\t\t\t});\n\t\t\t\t\tBX.UserContentView.registerViewArea(viewAreaList[i].id, (fullContentArea ? fullContentArea : null));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n","import { Loc, Type, ajax, Dom, Runtime, Uri, Event, Tag } from 'main.core';\nimport { BaseEvent, EventEmitter } from 'main.core.events';\n\nimport {FeedInstance, PinnedPanelInstance, InformerInstance} from './feed';\nimport {Loader} from './loader';\nimport {MoreButton} from './morebutton';\nimport {ContentView} from './contentview';\n\nclass Page\n{\n\tconstructor()\n\t{\n\t\tthis.loadStarted = null;\n\t\tthis.stopTrackNextPage = null;\n\t\tthis.requestMode = null;\n\t\tthis.nextPageFirst = null;\n\t\tthis.nextPageUrl = null;\n\t\tthis.scrollInitialized = null;\n\t\tthis.firstPageLastTS = 0;\n\t\tthis.firstPageLastId = 0;\n\t\tthis.useBXMainFilter = 'N';\n\t\tthis.commentFormUID = '';\n\t\tthis.blogCommentFormUID = '';\n\n\t\tthis.signedParameters = '';\n\t\tthis.componentName = '';\n\t\tthis.context = '';\n\n\t\tthis.class = {\n\t\t};\n\n\t\tEvent.ready(() => {\n\t\t\tthis.init();\n\t\t});\n\t}\n\n\tinit()\n\t{\n\t\tthis.loadStarted = false;\n\t\tthis.stopTrackNextPage = false;\n\t\tthis.requestMode = false;\n\t\tthis.nextPageFirst = true;\n\t\tthis.nextPageUrl = false;\n\t\tthis.scrollInitialized = false;\n\t}\n\n\trefresh(params, filterPromise)\n\t{\n\t\tif (this.loadStarted)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.setRequestModeNew();\n\n\t\tparams = (\n\t\t\tType.isPlainObject(params)\n\t\t\t\t? params\n\t\t\t\t: {}\n\t\t);\n\n\t\tparams.siteTemplateId = Loc.getMessage('SONET_EXT_LIVEFEED_SITE_TEMPLATE_ID');\n\t\tparams.assetsCheckSum = Loc.getMessage('sonetLAssetsCheckSum');\n\t\tparams.context = Type.isStringFilled(params.context) ? params.context : this.context;\n\t\tthis.loadStarted = true;\n\n\t\tLoader.showRefreshFade();\n\n\t\tMoreButton.clearCommentsList();\n\t\tFeedInstance.clearMoreButtons();\n\n\t\tif (Type.isStringFilled(this.commentFormUID))\n\t\t{\n\t\t\tparams.commentFormUID = this.commentFormUID;\n\t\t}\n\n\t\tif (\n\t\t\t!Type.isStringFilled(params.useBXMainFilter)\n\t\t\t|| params.useBXMainFilter !== 'Y'\n\t\t)\n\t\t{\n\t\t\tEventEmitter.emit('BX.Livefeed:refresh', new BaseEvent({\n\t\t\t\tcompatData: [],\n\t\t\t}));\n\t\t}\n\n\t\tInformerInstance.hideReloadNode();\n\t\tInformerInstance.lockCounterAnimation = true;\n\n\t\tthis.loadStarted = false;\n\n\t\tajax.runAction('socialnetwork.api.livefeed.refresh', {\n\t\t\tsignedParameters: this.getSignedParameters(),\n\t\t\tdata: {\n\t\t\t\tc: this.getComponentName(),\n\t\t\t\tlogajax: 'Y', // compatibility\n\t\t\t\tRELOAD: 'Y', // compatibility\n\t\t\t\tparams: params,\n\t\t\t}\n\t\t}).then((response) => {\n\n\t\t\tconst responseData = (Type.isPlainObject(response.data) ? response.data : {});\n\n\t\t\tthis.loadStarted = false;\n\t\t\tLoader.hideRefreshFade();\n\n\t\t\tif (filterPromise)\n\t\t\t{\n\t\t\t\tfilterPromise.fulfill();\n\t\t\t}\n\n\t\t\tconst emptyLivefeed = (\n\t\t\t\tType.isPlainObject(responseData.componentResult)\n\t\t\t\t&& Type.isStringFilled(responseData.componentResult.EMPTY)\n\t\t\t\t\t? responseData.componentResult.EMPTY\n\t\t\t\t\t: 'N'\n\t\t\t);\n\t\t\tconst forcePageRefresh = (\n\t\t\t\tType.isPlainObject(responseData.componentResult)\n\t\t\t\t&& Type.isStringFilled(responseData.componentResult.FORCE_PAGE_REFRESH)\n\t\t\t\t\t? responseData.componentResult.FORCE_PAGE_REFRESH\n\t\t\t\t\t: 'N'\n\t\t\t);\n\n\t\t\tconst isFilterUsed = (\n\t\t\t\tType.isPlainObject(responseData.componentResult)\n\t\t\t\t&& Type.isStringFilled(responseData.componentResult.FILTER_USED)\n\t\t\t\t&& responseData.componentResult.FILTER_USED === 'Y'\n\t\t\t);\n\n\t\t\tif (forcePageRefresh === 'Y')\n\t\t\t{\n\t\t\t\ttop.window.location.reload();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst loaderContainer = document.getElementById('feed-loader-container');\n\n\t\t\tInformerInstance.lockCounterAnimation = false;\n\n\t\t\tconst feedContainer = document.getElementById('log_internal_container');\n\t\t\tif (!feedContainer)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tDom.clean(feedContainer);\n\n\t\t\tconst emptyBlock = document.getElementById('feed-empty-wrap');\n\n\t\t\tif (emptyBlock)\n\t\t\t{\n\t\t\t\tif (emptyLivefeed === 'Y')\n\t\t\t\t{\n\t\t\t\t\temptyBlock.style.display = 'block';\n\n\t\t\t\t\tconst emptyTextNode = emptyBlock.querySelector('.feed-wrap-empty');\n\t\t\t\t\tif (emptyTextNode)\n\t\t\t\t\t{\n\t\t\t\t\t\temptyTextNode.innerHTML = (\n\t\t\t\t\t\t\tisFilterUsed\n\t\t\t\t\t\t\t\t? Loc.getMessage('SONET_C30_T_EMPTY_SEARCH')\n\t\t\t\t\t\t\t\t: Loc.getMessage('SONET_C30_T_EMPTY')\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\temptyBlock.style.display = 'none';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (loaderContainer)\n\t\t\t{\n\t\t\t\tfeedContainer.appendChild(loaderContainer);\n\t\t\t}\n\n\t\t\tif (responseData.html.length > 0)\n\t\t\t{\n\t\t\t\tthis.clearContainerExternal();\n\t\t\t\tBX.LazyLoad.clearImages();\n\n\t\t\t\tconst pageNode = Tag.render`<div id=\"content_block_${(Math.floor(Math.random() * 1000))}\" class=\"feed-wrap\" style=\"display: block;\"></div>`;\n\n\t\t\t\tfeedContainer.appendChild(pageNode);\n\n\t\t\t\tRuntime.html(pageNode, responseData.html).then(() => {\n\t\t\t\t\tMoreButton.recalcPostsList()\n\t\t\t\t\tMoreButton.recalcCommentsList();\n\n\t\t\t\t\tContentView.registerAreaList();\n\n\t\t\t\t\tPinnedPanelInstance.resetFlags();\n\t\t\t\t\tPinnedPanelInstance.initPanel();\n\t\t\t\t\tPinnedPanelInstance.initPosts();\n\t\t\t\t});\n\n\t\t\t\tthis.stopTrackNextPage = false;\n\n\t\t\t\tMoreButton.clearCommentsList();\n\n\t\t\t\tconst informerWrap = InformerInstance.getWrap();\n\n\t\t\t\tif (\n\t\t\t\t\tinformerWrap\n\t\t\t\t\t&& informerWrap.classList.contains(InformerInstance.class.informerFixed)\n\t\t\t\t)\n\t\t\t\t{\n\t\t\t\t\t(new BX.easing({\n\t\t\t\t\t\tduration: 500,\n\t\t\t\t\t\tstart: { scroll: window.pageYOffset },\n\t\t\t\t\t\tfinish: { scroll: 0 },\n\t\t\t\t\t\ttransition: BX.easing.makeEaseOut(BX.easing.transitions.quart),\n\t\t\t\t\t\tstep: (state) => {\n\t\t\t\t\t\t\twindow.scrollTo(0, state.scroll);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tcomplete: () => {\n\t\t\t\t\t\t\tEventEmitter.emit('onGoUp', []);\n\t\t\t\t\t\t}\n\t\t\t\t\t})).animate();\n\t\t\t\t}\n\t\t\t}\n\t\t}, () => {\n\n\t\t\tthis.loadStarted = false;\n\t\t\tif (filterPromise)\n\t\t\t{\n\t\t\t\tfilterPromise.reject();\n\t\t\t}\n\n\t\t\tLoader.hideRefreshFade();\n\t\t\tthis.showRefreshError();\n\t\t});\n\n\t\treturn false;\n\t}\n\n\tgetNextPage()\n\t{\n\t\tconst stubContainer = document.getElementById('feed-new-message-inf-wrap');\n\t\tconst stubFirstContainer = document.getElementById('feed-new-message-inf-wrap-first');\n\n\t\tif (this.loadStarted)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tthis.setRequestModeMore();\n\n\t\tthis.loadStarted = true;\n\n\t\tInformerInstance.lockCounterAnimation = true;\n\t\tFeedInstance.clearMoreButtons();\n\n\t\tif (\n\t\t\t!this.nextPageFirst\n\t\t\t&& stubContainer\n\t\t)\n\t\t{\n\t\t\tstubContainer.style.display = 'block';\n\t\t}\n\t\telse if (\n\t\t\tthis.nextPageFirst\n\t\t\t&& stubFirstContainer\n\t\t)\n\t\t{\n\t\t\tstubFirstContainer.classList.add('feed-new-message-inf-wrap-first-visible');\n\t\t}\n\n\t\tconst nextUrlParamsList = (new Uri(this.getNextPageUrl())).getQueryParams();\n\t\tlet pageNumber = 1;\n\t\tlet prevPageLogId = '';\n\t\tlet ts = 0;\n\t\tlet noblog = 'N';\n\n\t\tObject.entries(nextUrlParamsList).forEach(([ key, value ]) => {\n\t\t\tif (key.match(/^PAGEN_(\\d+)$/i))\n\t\t\t{\n\t\t\t\tpageNumber = parseInt(value);\n\t\t\t}\n\t\t\telse if (key === 'pplogid')\n\t\t\t{\n\t\t\t\tprevPageLogId = decodeURI(value);\n\t\t\t}\n\t\t\telse if (key === 'ts')\n\t\t\t{\n\t\t\t\tts = value;\n\t\t\t}\n\t\t\telse if (key === 'noblog')\n\t\t\t{\n\t\t\t\tnoblog = value;\n\t\t\t}\n\t\t});\n\n\t\tconst queryParams = {\n\t\t\tPAGE_NUMBER: pageNumber,\n\t\t\tLAST_LOG_TIMESTAMP: ts,\n\t\t\tPREV_PAGE_LOG_ID: prevPageLogId,\n\t\t\tsiteTemplateId: Loc.getMessage('SONET_EXT_LIVEFEED_SITE_TEMPLATE_ID'),\n\t\t\tuseBXMainFilter: this.useBXMainFilter,\n\t\t\tpreset_filter_top_id: (Type.isStringFilled(nextUrlParamsList.preset_filter_top_id) && nextUrlParamsList.preset_filter_top_id !== '0' ? nextUrlParamsList.preset_filter_top_id : ''),\n\t\t\tpreset_filter_id: (Type.isStringFilled(nextUrlParamsList.preset_filter_id) && nextUrlParamsList.preset_filter_id !== '0' ? nextUrlParamsList.preset_filter_id : '')\n\t\t};\n\n\t\tif (Type.isStringFilled(this.commentFormUID))\n\t\t{\n\t\t\tqueryParams.commentFormUID = this.commentFormUID;\n\t\t}\n\n\t\tif (Type.isStringFilled(this.blogCommentFormUID))\n\t\t{\n\t\t\tqueryParams.blogCommentFormUID = this.blogCommentFormUID;\n\t\t}\n\n\t\tqueryParams.context = this.context;\n\n\t\tconst queryData = {\n\t\t\tc: this.getComponentName(),\n\t\t\tlogajax: 'Y', // compatibility with socialnetwork.blog.post.comment\n\t\t\tnoblog: noblog, // compatibility with socialnetwork.blog.post.comment\n\t\t\tparams: queryParams,\n\t\t};\n\n\t\tif (!Type.isUndefined(nextUrlParamsList.CREATED_BY_ID))\n\t\t{\n\t\t\tqueryData.flt_created_by_id = parseInt(nextUrlParamsList.CREATED_BY_ID);\n\t\t}\n\n\t\tif (!Type.isUndefined(nextUrlParamsList.flt_date_datesel))\n\t\t{\n\t\t\tqueryData.flt_date_datesel = nextUrlParamsList.flt_date_datesel;\n\t\t}\n\n\t\tif (!Type.isUndefined(nextUrlParamsList.flt_date_from))\n\t\t{\n\t\t\tqueryData.flt_date_from = decodeURIComponent(nextUrlParamsList.flt_date_from);\n\t\t}\n\n\t\tif (!Type.isUndefined(nextUrlParamsList.flt_date_to))\n\t\t{\n\t\t\tqueryData.flt_date_to = decodeURIComponent(nextUrlParamsList.flt_date_to);\n\t\t}\n\n\t\tajax.runAction('socialnetwork.api.livefeed.getNextPage', {\n\t\t\tsignedParameters: this.getSignedParameters(),\n\t\t\tdata: queryData,\n\t\t}).then((response) => {\n\t\t\tconst responseData = (Type.isPlainObject(response.data) ? response.data : {});\n\n\t\t\tthis.loadStarted = false;\n\n\t\t\tconst stubContainer = document.getElementById('feed-new-message-inf-wrap');\n\t\t\tif (stubContainer)\n\t\t\t{\n\t\t\t\tDom.clean(stubContainer);\n\t\t\t\tDom.remove(stubContainer)\n\t\t\t}\n\n\t\t\tInformerInstance.lockCounterAnimation = false;\n\n\t\t\tconst lastEntryTimestamp = (\n\t\t\t\tType.isPlainObject(responseData.componentResult)\n\t\t\t\t&& !Type.isUndefined(responseData.componentResult.LAST_TS)\n\t\t\t\t\t? parseInt(responseData.componentResult.LAST_TS)\n\t\t\t\t\t: 0\n\t\t\t);\n\t\t\tconst lastEntryId = (\n\t\t\t\tType.isPlainObject(responseData.componentResult)\n\t\t\t\t&& !Type.isUndefined(responseData.componentResult.LAST_ID)\n\t\t\t\t\t? parseInt(responseData.componentResult.LAST_ID)\n\t\t\t\t\t: null\n\t\t\t);\n\n\t\t\tif (\n\t\t\t\tresponseData.html.length > 0\n\t\t\t\t&& lastEntryTimestamp > 0\n\t\t\t\t&& (\n\t\t\t\t\tparseInt(this.firstPageLastTS) <= 0\n\t\t\t\t\t|| lastEntryTimestamp < parseInt(this.firstPageLastTS)\n\t\t\t\t\t|| (\n\t\t\t\t\t\tlastEntryTimestamp == parseInt(this.firstPageLastTS)\n\t\t\t\t\t\t&& !Type.isNull(lastEntryId)\n\t\t\t\t\t\t&& lastEntryId < parseInt(this.firstPageLastId)\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t)\n\t\t\t{\n\t\t\t\tMoreButton.clearCommentsList();\n\n\t\t\t\tconst contentBlockId = `content_block_${(Math.floor(Math.random() * 1000))}`;\n\n\t\t\t\tconst pageNode = Tag.render`<div id=\"${contentBlockId}\" class=\"feed-wrap\" style=\"display:${(this.nextPageFirst ? 'none' : 'block')};\"></div>`;\n\n\t\t\t\tconst feedContainer = document.getElementById('log_internal_container');\n\t\t\t\tif (!feedContainer)\n\t\t\t\t{\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfeedContainer.appendChild(pageNode);\n\n\t\t\t\tRuntime.html(pageNode, responseData.html).then(() => {\n\t\t\t\t\tif (pageNumber > 2)\n\t\t\t\t\t{\n\t\t\t\t\t\tthis.stopTrackNextPage = false;\n\t\t\t\t\t\tMoreButton.recalcPostsList();\n\t\t\t\t\t\tContentView.registerAreaList();\n\t\t\t\t\t\tMoreButton.recalcCommentsList();\n\t\t\t\t\t\tPinnedPanelInstance.resetFlags();\n\t\t\t\t\t\tPinnedPanelInstance.initPosts();\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tthis.clearContainerExternal();\n\n\t\t\t\tif (pageNumber === 2)\n\t\t\t\t{\n\t\t\t\t\tdocument.getElementById('feed-new-message-inf-text-first').style.display = 'block';\n\t\t\t\t\tdocument.getElementById('feed-new-message-inf-loader-first').style.display = 'none';\n\t\t\t\t\tstubFirstContainer.classList.add('feed-new-message-inf-wrap-first-active');\n\n\t\t\t\t\tconst f = () => {\n\n\t\t\t\t\t\tthis.stopTrackNextPage = false;\n\t\t\t\t\t\tif (pageNode)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tpageNode.style.display = 'block';\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tEvent.unbind(document.getElementById('sonet_log_more_container_first'), 'click', f);\n\t\t\t\t\t\tstubFirstContainer.style.display = 'none';\n\t\t\t\t\t\tMoreButton.recalcPostsList()\n\t\t\t\t\t\tContentView.registerAreaList();\n\t\t\t\t\t\tMoreButton.recalcCommentsList();\n\n\t\t\t\t\t\tEventEmitter.emit('BX.Livefeed:recalculateComments', new BaseEvent({\n\t\t\t\t\t\t\tcompatData: [{\n\t\t\t\t\t\t\t\trootNode: pageNode,\n\t\t\t\t\t\t\t}],\n\t\t\t\t\t\t}));\n\n\n\t\t\t\t\t\tPinnedPanelInstance.resetFlags();\n\t\t\t\t\t\tPinnedPanelInstance.initPosts();\n\t\t\t\t\t};\n\t\t\t\t\tEvent.bind(document.getElementById('sonet_log_more_container_first'), 'click', f);\n\t\t\t\t}\n\t\t\t\telse\n\t\t\t\t{\n\t\t\t\t\tif (pageNode)\n\t\t\t\t\t{\n\t\t\t\t\t\tpageNode.style.display = 'block';\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis.nextPageFirst = false;\n\t\t\t}\n\n\t\t\telse if (document.getElementById('feed-new-message-inf-wrap-first'))\n\t\t\t{\n\t\t\t\tdocument.getElementById('feed-new-message-inf-wrap-first').style.display = 'none';\n\t\t\t}\n\t\t}, () => {\n\n\t\t\tthis.loadStarted = false;\n\t\t\tthis.stopTrackNextPage = false;\n\n\t\t\tconst stubContainer = document.getElementById('feed-new-message-inf-wrap');\n\t\t\tif (stubContainer)\n\t\t\t{\n\t\t\t\tstubContainer.style.display = 'none';\n\t\t\t}\n\n\t\t\tInformerInstance.lockCounterAnimation = false;\n\t\t\tthis.clearContainerExternal();\n\t\t});\n\n\t\treturn false;\n\t}\n\n\tclearContainerExternal()\n\t{\n\t\tif (this.requestMode === 'new')\n\t\t{\n\t\t\tInformerInstance.hideWrapAnimation();\n\t\t\tInformerInstance.recover();\n\t\t}\n\n\t\tInformerInstance.hideReloadAnimation();\n\n\t\tconst counterPreset = document.getElementById('sonet_log_counter_preset');\n\t\tif (\n\t\t\tcounterPreset\n\t\t\t&& this.requestMode === 'new'\n\t\t)\n\t\t{\n\t\t\tcounterPreset.style.display = 'none';\n\t\t}\n\t}\n\n\tsetRequestModeNew()\n\t{\n\t\tthis.requestMode = 'new';\n\t}\n\n\tsetRequestModeMore()\n\t{\n\t\tthis.requestMode = 'more';\n\t}\n\n\tshowRefreshError()\n\t{\n\t\tInformerInstance.lockCounterAnimation = false;\n\t\tthis.clearContainerExternal();\n\t}\n\tsetSignedParameters(value)\n\t{\n\t\tthis.signedParameters = value;\n\t}\n\n\tsetContext(context: string): void\n\t{\n\t\tthis.context = context;\n\t}\n\n\tgetSignedParameters()\n\t{\n\t\treturn this.signedParameters;\n\t}\n\n\tsetComponentName(value)\n\t{\n\t\tthis.componentName = value;\n\t}\n\tgetComponentName()\n\t{\n\t\treturn this.componentName;\n\t}\n\n\tsetNextPageUrl(value)\n\t{\n\t\tthis.nextPageUrl = value;\n\t}\n\tgetNextPageUrl()\n\t{\n\t\treturn this.nextPageUrl;\n\t}\n\n\tinitScroll()\n\t{\n\t\tif (this.scrollInitialized)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.scrollInitialized = true;\n\t\tdocument.addEventListener('scroll', this.onFeedScroll.bind(this), true);\n\t}\n\n\tonFeedScroll()\n\t{\n\t\tif (!this.stopTrackNextPage)\n\t\t{\n\t\t\tconst maxScroll = (document.documentElement.scrollHeight - window.innerHeight) - 500;\n\t\t\tif (\n\t\t\t\twindow.pageYOffset >= maxScroll\n\t\t\t\t&& this.getNextPageUrl()\n\t\t\t)\n\t\t\t{\n\t\t\t\tthis.stopTrackNextPage = true;\n\t\t\t\tthis.getNextPage();\n\t\t\t}\n\t\t}\n\n\t\tInformerInstance.onFeedScroll();\n\t}\n}\n\nexport {\n\tPage\n};","import { Type, Tag, Runtime } from 'main.core';\nimport { BaseEvent, EventEmitter } from 'main.core.events';\nimport { ResultManager } from 'tasks.result';\n\nexport class CommentForm\n{\n\tstatic resultFieldTaskIdList = [];\n\tstatic taskResultCommentsData = {};\n\n\tstatic appendResultFieldTaskIds(taskIdList)\n\t{\n\t\tif (!Type.isArray(taskIdList))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\ttaskIdList = taskIdList.map((value) => { return parseInt(value); })\n\t\tthis.resultFieldTaskIdList = [...this.resultFieldTaskIdList, ...taskIdList];\n\t}\n\n\tstatic appendTaskResultComments(data)\n\t{\n\t\tif (Type.isUndefined(ResultManager))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.taskResultCommentsData = Object.assign(this.taskResultCommentsData, data);\n\n\t\tObject.entries(this.taskResultCommentsData).forEach(([taskId, commentsIdList]) => {\n\t\t\tResultManager.getInstance().initResult({\n\t\t\t\tcontext: 'task',\n\t\t\t\ttaskId: parseInt(taskId),\n\t\t\t\tcomments: commentsIdList,\n\t\t\t});\n\t\t});\n\t}\n\n\tstatic onAfterShow(obj, text, data)\n\t{\n\t\tif (!Type.isPlainObject(data))\n\t\t{\n\t\t\tdata = {};\n\t\t}\n\n\t\tEventEmitter.emit('OnBeforeSocialnetworkCommentShowedUp', new BaseEvent({\n\t\t\tcompatData: ['socialnetwork'],\n\t\t}));\n\n\t\tconst postData = {\n\t\t\tENTITY_XML_ID: obj.currentEntity.ENTITY_XML_ID,\n\t\t\tENTITY_TYPE: obj.currentEntity.ENTITY_XML_ID.split('_')[0],\n\t\t\tENTITY_ID: obj.currentEntity.ENTITY_XML_ID.split('_')[1],\n\t\t\tparentId: obj.id[1],\n\t\t\tcomment_post_id: obj.currentEntity.ENTITY_XML_ID.split('_')[1],\n\t\t\tedit_id: obj.id[1],\n\t\t\tact: (obj.id[1] > 0 ? 'edit' : 'add'),\n\t\t};\n\n\t\tObject.entries(postData).forEach(([key, value]) =>\n\t\t{\n\t\t\tif (!obj.form[key])\n\t\t\t{\n\t\t\t\tobj.form.appendChild(Tag.render`<input type=\"hidden\" name=\"${key}\">`);\n\t\t\t}\n\t\t\tobj.form[key].value = value;\n\t\t});\n\n\t\tthis.onLightEditorShow(text, data);\n\n\t\tif (!BX.Type.isUndefined(BX.Tasks))\n\t\t{\n\t\t\tconst matches = obj.currentEntity.ENTITY_XML_ID.match(/^TASK_(\\d+)$/i);\n\t\t\tif (\n\t\t\t\tmatches\n\t\t\t\t&& this.resultFieldTaskIdList.includes(parseInt(matches[1]))\n\t\t\t)\n\t\t\t{\n\t\t\t\tBX.Tasks.ResultManager.showField();\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tBX.Tasks.ResultManager.hideField();\n\t\t\t}\n\t\t}\n\t}\n\n\tstatic onLightEditorShow(content, data)\n\t{\n\t\tif (!Type.isPlainObject(data))\n\t\t{\n\t\t\tdata = {};\n\t\t}\n\n\t\tlet result = {};\n\n\t\tif (Type.isPlainObject(data.UF))\n\t\t{\n\t\t\tresult = data.UF;\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (data.arFiles)\n\t\t\t{\n\t\t\t\tconst value = {};\n\n\t\t\t\tdata.arFiles.forEach((fileId, index) => {\n\t\t\t\t\tconst container = document.getElementById(`wdif-doc-${fileId}`);\n\n\t\t\t\t\tconst name = container.querySelector('.feed-com-file-name');\n\t\t\t\t\tconst size = container.querySelector('.feed-con-file-size');\n\n\t\t\t\t\tvalue[`F${index}`] = {\n\t\t\t\t\t\tFILE_ID: fileId,\n\t\t\t\t\t\tFILE_NAME: (name ? name.innerHTML : 'noname'),\n\t\t\t\t\t\tFILE_SIZE: (size ? size.innerHTML : 'unknown'),\n\t\t\t\t\t\tCONTENT_TYPE: 'notimage/xyz'\n\t\t\t\t\t};\n\t\t\t\t})\n\n\t\t\t\tresult.UF_SONET_COM_DOC = {\n\t\t\t\t\tUSER_TYPE_ID: 'file',\n\t\t\t\t\tFIELD_NAME: 'UF_SONET_COM_FILE[]',\n\t\t\t\t\tVALUE: value,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (data.arDocs)\n\t\t\t{\n\t\t\t\tresult.UF_SONET_COM_FILE = {\n\t\t\t\t\tUSER_TYPE_ID: 'webdav_element',\n\t\t\t\t\tFIELD_NAME: 'UF_SONET_COM_DOC[]',\n\t\t\t\t\tVALUE: Runtime.clone(data.arDocs),\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif (data.arDFiles)\n\t\t\t{\n\t\t\t\tresult.UF_SONET_COM_FILE = {\n\t\t\t\t\tUSER_TYPE_ID: 'disk_file',\n\t\t\t\t\tFIELD_NAME: 'UF_SONET_COM_DOC[]',\n\t\t\t\t\tVALUE: Runtime.clone(data.arDFiles)\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tLHEPostForm.reinitData(window.SLEC.editorId, content, result);\n\t}\n}\n","import {Type, Loc, ajax, Event, Dom, Tag} from 'main.core';\nimport {EventEmitter} from 'main.core.events';\nimport {MenuManager} from 'main.popup';\n\nimport {PinnedPanel} from './pinned';\nimport {Post} from './post';\nimport {Informer} from './informer';\nimport {TaskCreator} from './taskcreator';\nimport {Loader} from './loader';\nimport {Forum} from './forum';\nimport {MoreButton} from './morebutton';\nimport {Filter} from './filter';\nimport {Page} from './page';\nimport {ContentView} from './contentview';\nimport {CommentForm} from './commentform';\n\nimport './css/feed.css';\nimport './css/gratitude.css';\nimport './css/important.css';\nimport './css/warning.css';\nimport './css/taskcreator.css';\nimport './css/task.css';\nimport './css/timeman.css';\nimport './css/calendar.css';\n\nclass Feed\n{\n\tconstructor()\n\t{\n\t\tthis.entryData = {};\n\t\tthis.feedInitialized = false;\n\t\tthis.moreButtonDataList = new Map();\n\n\t\tthis.currentScrollPosition = 0;\n\t}\n\n\tinitOnce(params)\n\t{\n\t\tconst loaderContainer = document.getElementById('feed-loader-container');\n\t\tif (!Type.isPlainObject(params))\n\t\t{\n\t\t\tparams = {};\n\t\t}\n\n\t\tif (Type.isStringFilled(params.signedParameters))\n\t\t{\n\t\t\tPageInstance.setSignedParameters(params.signedParameters);\n\t\t}\n\n\t\tif (Type.isStringFilled(params.context))\n\t\t{\n\t\t\tPageInstance.setContext(params.context);\n\t\t}\n\n\t\tif (Type.isStringFilled(params.componentName))\n\t\t{\n\t\t\tPageInstance.setComponentName(params.componentName);\n\t\t}\n\n\t\tif (Type.isStringFilled(params.commentFormUID))\n\t\t{\n\t\t\tPageInstance.commentFormUID = params.commentFormUID;\n\t\t}\n\n\t\tif (loaderContainer)\n\t\t{\n\t\t\tEvent.bind(loaderContainer, 'animationend', Loader.onAnimationEnd)\n\t\t\tEvent.bind(loaderContainer, 'webkitAnimationEnd', Loader.onAnimationEnd)\n\t\t\tEvent.bind(loaderContainer, 'oanimationend', Loader.onAnimationEnd)\n\t\t\tEvent.bind(loaderContainer, 'MSAnimationEnd', Loader.onAnimationEnd)\n\t\t}\n\n\t\tEventEmitter.subscribe('BX.Forum.Spoiler:toggle', Forum.processSpoilerToggle);\n\n\t\tFilterInstance.init({\n\t\t\tfilterId: params.filterId,\n\t\t});\n\n\t\tInformerInstance.init({\n\t\t\tisSpaceFeatureEnabled: params.isSpaceEnabled,\n\t\t\tuserId: params.userId,\n\t\t\tspaceId: params.spaceId,\n\t\t});\n\n\t\tif (\n\t\t\tType.isStringFilled(params.crmEntityTypeName)\n\t\t\t&& !Type.isUndefined(params.crmEntityId)\n\t\t\t&& parseInt(params.crmEntityId) > 0\n\t\t)\n\t\t{\n\t\t\tFilterInstance.initEventsCrm();\n\t\t}\n\n\t\tBX.UserContentView.init();\n\n\t\tdocument.getElementById('log_internal_container').addEventListener('click', (e) => {\n\t\t\tconst tagValue = e.target.getAttribute('bx-tag-value');\n\t\t\tif (!Type.isStringFilled(tagValue))\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (FilterInstance.clickTag(tagValue))\n\t\t\t{\n\t\t\t\te.preventDefault();\n\t\t\t\te.stopPropagation();\n\t\t\t}\n\t\t}, true);\n\n\t\tconst noTasksNotificationCloseIcon = document.getElementById('feed-notification-notasks-close-btn');\n\t\tconst noTasksNotificationReadButton = document.getElementById('feed-notification-notasks-read-btn');\n\n\t\tif (noTasksNotificationCloseIcon)\n\t\t{\n\t\t\tEvent.bind(noTasksNotificationCloseIcon, 'click', this.setNoTasksNotificationRead.bind(this));\n\t\t}\n\t\tif (noTasksNotificationReadButton)\n\t\t{\n\t\t\tEvent.bind(noTasksNotificationReadButton, 'click', this.setNoTasksNotificationRead.bind(this));\n\t\t}\n\n\t\tEvent.bind(document, 'fullscreenchange', this.handleFullScreenChange.bind(this));\n\t\tEvent.bind(document, 'scroll', this.handleScrollChange.bind(this));\n\t}\n\n\thandleFullScreenChange()\n\t{\n\t\tif (!this.getFullScreenElement())\n\t\t{\n\t\t\twindow.scrollTo(0, this.currentScrollPosition);\n\t\t}\n\t}\n\n\thandleScrollChange()\n\t{\n\t\tif (!this.getFullScreenElement())\n\t\t{\n\t\t\tthis.currentScrollPosition = window.scrollY;\n\t\t}\n\t}\n\n\tgetFullScreenElement(): ?Element\n\t{\n\t\treturn (\n\t\t\tdocument.fullscreenElement\n\t\t\t|| document.webkitFullscreenElement\n\t\t\t|| document.mozFullScreenElement\n\t\t\t|| document.msFullscreenElement\n\t\t\t|| null\n\t\t);\n\t}\n\n\tinit()\n\t{\n\t\tif (this.feedInitialized)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tPinnedPanelInstance.init();\n\n\t\tthis.feedInitialized = true;\n\t}\n\n\tchangeFollow(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tif (!logId)\n\t\t{\n\t\t\treturn false;\n\t\t}\n\n\t\tconst followNode = document.getElementById('log_entry_follow_' + logId);\n\t\tconst valueOld = (followNode && followNode.getAttribute('data-follow') === 'Y' ? 'Y' : 'N');\n\t\tconst valueNew = (valueOld === 'Y' ? 'N' : 'Y');\n\n\t\tthis.renderFollow({\n\t\t\tlogId: logId,\n\t\t\tvalue: valueNew\n\t\t});\n\n\t\tajax.runAction('socialnetwork.api.livefeed.changeFollow', {\n\t\t\tdata: {\n\t\t\t\tlogId: logId,\n\t\t\t\tvalue: valueNew\n\t\t\t},\n\t\t\tanalyticsLabel: {\n\t\t\t\tb24statAction: (valueNew === 'Y' ? 'setFollow' : 'setUnfollow')\n\t\t\t}\n\t\t}).then((response) => {\n\t\t\tif (!response.data.success)\n\t\t\t{\n\t\t\t\tthis.renderFollow({\n\t\t\t\t\tlogId: logId,\n\t\t\t\t\tvalue: valueOld\n\t\t\t\t});\n\t\t\t}\n\t\t}, () => {\n\t\t\tthis.renderFollow({\n\t\t\t\tlogId: logId,\n\t\t\t\tvalue: valueOld\n\t\t\t});\n\t\t});\n\n\t\treturn false;\n\t}\n\n\trenderFollow(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tif (!logId)\n\t\t{\n\t\t\treturn;\n\t\t}\n\t\tconst followNode = document.getElementById('log_entry_follow_' + logId);\n\t\tconst value = (params.value && params.value === 'Y' ? 'Y' : 'N');\n\n\t\tif (followNode)\n\t\t{\n\t\t\tfollowNode.setAttribute('data-follow', value);\n\t\t}\n\n\t\tconst textNode = (followNode ? followNode.querySelector('a') : null);\n\t\tif (textNode)\n\t\t{\n\t\t\ttextNode.innerHTML = Loc.getMessage('SONET_EXT_LIVEFEED_FOLLOW_TITLE_' + value);\n\t\t}\n\n\t\tconst postNode = (followNode ? followNode.closest('.feed-post-block') : null);\n\t\tif (postNode)\n\t\t{\n\t\t\tif (value === 'N')\n\t\t\t{\n\t\t\t\tpostNode.classList.add('feed-post-block-unfollowed');\n\t\t\t}\n\t\t\telse if (value === 'Y')\n\t\t\t{\n\t\t\t\tpostNode.classList.remove('feed-post-block-unfollowed');\n\t\t\t}\n\t\t}\n\t}\n\n\tchangeFavorites(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tconst event = (params.event ? params.event : null);\n\n\t\tlet node = (params.node ? params.node : null);\n\t\tlet newState = (params.newState ? params.newState : null);\n\n\t\tif (Type.isStringFilled(node))\n\t\t{\n\t\t\tnode = document.getElementById(node);\n\t\t}\n\n\t\tif (!logId)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tlet menuItem = null;\n\n\t\tif (event)\n\t\t{\n\t\t\tmenuItem = event.target;\n\t\t\tif (!menuItem.classList.contains('menu-popup-item-text'))\n\t\t\t{\n\t\t\t\tmenuItem = menuItem.querySelector('.menu-popup-item-text');\n\t\t\t}\n\t\t}\n\n\t\tlet nodeToAdjust = null;\n\n\t\tif (Type.isDomNode(node))\n\t\t{\n\t\t\tnodeToAdjust = (\n\t\t\t\tnode.classList.contains('feed-post-important-switch')\n\t\t\t\t\t? node\n\t\t\t\t\t: node.querySelector('.feed-post-important-switch')\n\t\t\t);\n\t\t}\n\n\t\tif (typeof this.entryData[logId] == 'undefined')\n\t\t{\n\t\t\tthis.entryData[logId] = {};\n\t\t}\n\n\t\tif (typeof this.entryData[logId].favorites != 'undefined')\n\t\t{\n\t\t\tnewState = (this.entryData[logId].favorites ? 'N' : 'Y');\n\t\t\tthis.entryData[logId].favorites = !this.entryData[logId].favorites;\n\t\t}\n\t\telse if (nodeToAdjust)\n\t\t{\n\t\t\tnewState = (\n\t\t\t\tnodeToAdjust.classList.contains('feed-post-important-switch-active')\n\t\t\t\t\t? 'N'\n\t\t\t\t\t: 'Y'\n\t\t\t);\n\t\t\tthis.entryData[logId].favorites = (newState == 'Y');\n\t\t}\n\n\t\tif (!newState)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tthis.adjustFavoritesControlItem(nodeToAdjust, newState);\n\t\tthis.adjustFavoritesMenuItem(menuItem, newState);\n\n\t\tajax.runAction('socialnetwork.api.livefeed.changeFavorites', {\n\t\t\tdata: {\n\t\t\t\tlogId: logId,\n\t\t\t\tvalue: newState,\n\t\t\t},\n\t\t\tanalyticsLabel: {\n\t\t\t\tb24statAction: (newState == 'Y' ? 'addFavorites' : 'removeFavorites')\n\t\t\t}\n\t\t}).then(response =>\n\t\t{\n\t\t\tif (\n\t\t\t\tType.isStringFilled(response.data.newValue)\n\t\t\t\t&& ['Y', 'N'].includes(response.data.newValue)\n\t\t\t)\n\t\t\t{\n\t\t\t\tthis.entryData[logId].favorites = (response.data.newValue == 'Y');\n\t\t\t}\n\n\t\t\tthis.adjustFavoritesControlItem(nodeToAdjust, response.data.newValue);\n\t\t\tthis.adjustFavoritesMenuItem(menuItem, response.data.newValue);\n\n\t\t}, () => {\n\t\t\tthis.entryData[logId].favorites = !this.entryData[logId].favorites;\n\t\t});\n\t}\n\n\tadjustFavoritesMenuItem(menuItemNode, state)\n\t{\n\t\tif (\n\t\t\t!Type.isDomNode(menuItemNode)\n\t\t\t|| !['Y', 'N'].includes(state)\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tmenuItemNode.innerHTML = this.getMenuTitle(state === 'Y');\n\t}\n\n\tadjustFavoritesControlItem(node, state)\n\t{\n\t\tif (\n\t\t\t!Type.isDomNode(node)\n\t\t\t|| !['Y', 'N'].includes(state)\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tnode.title = this.getMenuTitle(state === 'Y');\n\t\tif (state == 'Y')\n\t\t{\n\t\t\tnode.classList.add('feed-post-important-switch-active');\n\t\t}\n\t\telse\n\t\t{\n\t\t\tnode.classList.remove('feed-post-important-switch-active');\n\t\t}\n\t}\n\n\tgetMenuTitle(state: boolean): string\n\t{\n\t\treturn Loc.getMessage(`SONET_EXT_LIVEFEED_MENU_TITLE_FAVORITES_${state ? 'Y' : 'N'}`);\n\t}\n\n\tdelete(params)\n\t{\n\t\tconst logId = (params.logId ? parseInt(params.logId) : 0);\n\t\tconst node = (Type.isStringFilled(params.nodeId) ? document.getElementById(params.nodeId) : null);\n\t\tconst ind = (params.ind ? params.ind : '');\n\n\t\tif (\n\t\t\tlogId <= 0\n\t\t\t|| !node\n\t\t)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tajax.runAction('socialnetwork.api.livefeed.deleteEntry', {\n\t\t\tdata: {\n\t\t\t\tlogId: logId,\n\t\t\t},\n\t\t\tanalyticsLabel: {\n\t\t\t\tb24statAction: 'deleteLogEntry',\n\t\t\t}\n\t\t}).then((response) => {\n\t\t\tif (response.data.success)\n\t\t\t{\n\t\t\t\tif (!Type.isUndefined(ind))\n\t\t\t\t{\n\t\t\t\t\tMenuManager.destroy(Post.getMenuId(ind));\n\t\t\t\t}\n\t\t\t\tthis.deleteSuccess(node);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tthis.deleteFailure(node);\n\t\t\t}\n\t\t}, () => {\n\t\t\tthis.deleteFailure(node);\n\t\t});\n\t}\n\n\tdeleteSuccess(node)\n\t{\n\t\tif (!Type.isDomNode(node))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\t(new BX.fx({\n\t\t\ttime: 0.5,\n\t\t\tstep: 0.05,\n\t\t\ttype: 'linear',\n\t\t\tstart: node.offsetHeight,\n\t\t\tfinish: 56,\n\t\t\tcallback: (height) => {\n\t\t\t\tnode.style.height = `${height}px`;\n\t\t\t},\n\t\t\tcallback_start: () => {\n\t\t\t\tnode.style.overflow = 'hidden';\n\t\t\t\tnode.style.minHeight = 0;\n\t\t\t},\n\t\t\tcallback_complete: () => {\n\t\t\t\tnode.style.marginBottom = 0;\n\t\t\t\tDom.clean(node);\n\t\t\t\tnode.classList.add('feed-post-block-deleted');\n\t\t\t\tnode.appendChild(Tag.render`<div class=\"feed-add-successfully\"><span class=\"feed-add-info-text\"><span class=\"feed-add-info-icon\"></span><span>${Loc.getMessage('SONET_EXT_LIVEFEED_DELETE_SUCCESS')}</span></span></span></div>`);\n\t\t\t}\n\t\t})).start();\n\t}\n\n\tdeleteFailure(node)\n\t{\n\t\tif (!Type.isDomNode(node))\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tnode.insertBefore(Tag.render`<div class=\"feed-add-error\" style=\"margin: 18px 37px 4px 84px;\"><span class=\"feed-add-info-text\"><span class=\"feed-add-info-icon\"></span><span>${Loc.getMessage('sonetLMenuDeleteFailure')}</span></span></div>`, node.firstChild);\n\t}\n\n\tsetMoreButtons(value)\n\t{\n\t\tthis.moreButtonDataList = value;\n\t}\n\n\tgetMoreButtons()\n\t{\n\t\treturn this.moreButtonDataList;\n\t}\n\n\tclearMoreButtons()\n\t{\n\t\tfor (const buttonData of this.moreButtonDataList)\n\t\t{\n\t\t\tconst moreButton = document.getElementById(buttonData.outerBlockID)?.querySelector(`.${MoreButton.cssClass.more}`);\n\t\t\tif (!moreButton?.hasClickListener)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tthis.moreButtonDataList.clear();\n\t}\n\n\taddMoreButton(key, data)\n\t{\n\t\tthis.moreButtonDataList.set(key, data);\n\t}\n\n\tsetNoTasksNotificationRead(event)\n\t{\n\t\tconst notificationNode = event.currentTarget.closest('.feed-notification-container');\n\t\tif (!notificationNode)\n\t\t{\n\t\t\treturn;\n\t\t}\n\n\t\tajax.runAction('socialnetwork.api.livefeed.readNoTasksNotification', {\n\t\t\tdata: {}\n\t\t}).then((response) => {\n\t\t\tif (!response.data.success)\n\t\t\t{\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tnotificationNode.style.height = notificationNode.offsetHeight + 'px';\n\n\t\t\tsetTimeout(() => {\n\t\t\t\tnotificationNode.classList.add('feed-notification-container-collapsed');\n\t\t\t}, 10);\n\t\t\tsetTimeout(() => {\n\t\t\t\tnotificationNode.parentNode.removeChild(notificationNode);\n\t\t\t}, 250);\n\n\t\t}, () => {});\n\t}\n\n}\n\nconst FeedInstance = new Feed();\nconst PinnedPanelInstance = new PinnedPanel();\nconst InformerInstance = new Informer();\nconst FilterInstance = new Filter();\nconst PageInstance = new Page();\nconst MoreButtonInstance = new MoreButton();\nnew TaskCreator();\n\nexport {\n\tFeedInstance,\n\tPinnedPanelInstance,\n\tInformerInstance,\n\tFilterInstance,\n\tPageInstance,\n\tMoreButtonInstance,\n\tPost,\n\tTaskCreator,\n\tLoader,\n\tMoreButton,\n\tContentView,\n\tCommentForm,\n};"],"names":["Utils","node","styles","Object","entries","forEach","key","value","style","PinnedPanel","pin","post","postHide","postComments","postPinned","postPinnedHide","postPinActive","postUnfollowed","postExpanding","panelCollapsed","panelNonEmpty","panelPosts","collapsedPanel","collapsedPanelExpand","collapsedPanelCounterPostsValue","collapsedPanelCounterComments","collapsedPanelCounterCommentsValue","collapsedPanelCounterCommentsShown","collapsedPanelCounterCommentsValueNew","collapsedPanelCounterCommentsValueNewValue","collapsedPanelCounterCommentsValueNewActive","collapsedPanelCounterCommentsValueOld","collapsedPanelCounterCommentsValueAll","collapsedPanelShow","collapsedPanelHide","cancelPanel","cancelPanelButton","cancelPanelLabel","panelInitialized","postsInitialized","handlePostClick","bind","options","Event","ready","initPosts","initPanel","initEvents","optionName","pinnedPanelNode","getPanelNode","adjustCollapsedPostsPanel","getCollapsedPanelNode","collapsedHeight","offsetHeight","setStyle","height","transition","setTimeout","hideCollapsedPanel","event","likeClicked","target","classList","contains","closest","followClicked","menuClicked","contentViewClicked","pinClicked","collapseClicked","commentsClicked","postNode","remove","menuId","getAttribute","MenuManager","destroy","BaseEvent","compatData","rootNode","data","EventEmitter","emit","anchorNode","querySelector","position","Dom","getPosition","window","scrollTo","top","stopPropagation","preventDefault","add","postList","document","querySelectorAll","length","Array","from","unbind","newState","logId","parseInt","changePinned","then","subscribe","getData","xmlId","id","getCommentsData","oldValue","newValue","setCommentsData","Type","isInteger","incrementMaxListeners","params","commentId","allValue","follow","commentsData","AUTHOR","ID","BX","message","panelNode","Promise","resolve","reject","getOption","setPostState","state","action","ajax","runAction","analyticsLabel","b24statAction","response","success","movePost","includes","setAttribute","Loc","getMessage","headers","name","entityValue","tokenValue","postToMove","parentNode","originalPostHeight","getPinnedData","pinnedPanelTitleNode","pinnedPanelDescriptionNode","pinnedPanelPinNode","innerHTML","TITLE","DESCRIPTION","title","cancelPinnedPanel","getCancelPinnedPanel","anchor","nextSibling","insertBefore","centerCancelPinnedPanelElements","cancelPanelHeight","width","backgroundColor","opacity","setOptions","panelHeight","pinBlocked","unbindAll","checkTransitionProperty","panelPostsNode","firstChild","adjustPanel","showCollapsedPostsPanel","pinnedHeight","scrollHeight","isDomNode","requestAnimationFrame","collapsed","showCollapsed","hideCollapsedPostsPanel","transform","display","animateCancel","marginBottom","Tag","render","marginLeft","getBoundingClientRect","getElementsByClassName","reduce","count","item","map","currentIndex","originalItemsList","postsCounter","getPostsCount","postsCounterNode","commentsCounterNode","commentsCounterValueNode","newCommentCounter","acc","showCollapsedPanel","hidePinnedItems","removeCollapsedPanel","showPinnedItems","animateCollapsedPanel","result","newNode","newValueNode","oldNode","allNode","isStringFilled","commentsNode","newPinnedCommentsNode","newValuePinnedCommentsNode","oldPinnedCommentsNode","allPinnedCommentsNode","getCommentsNodes","newCommentsValue","oldCommentsValue","allCommentsValue","matches","match","propertyName","TaskCreator","getCompatData","type","isPlainObject","isBoolean","STAY_AT_PAGE","signedFiles","sliderInstance","getTarget","sliderUrl","getUrl","entityType","entityId","postEntityType","entityData","SUFFIX","requestData","formatTaskDescription","URL","parentTaskId","PARENT_ID","UF_TASK_WEBDAV_FILES_SIGN","link","getLinkWithAnalytics","SidePanel","Instance","open","requestMethod","requestParams","cacheable","createTaskPopup","Popup","autoHide","zIndex","offsetLeft","offsetTop","overlay","lightShadow","closeIcon","right","draggable","restrict","closeByEsc","contentColor","contentNoPaddings","buttons","content","cssClass","popupContent","events","onAfterPopupShow","createTaskSetContent","popupTitle","isNumber","additionalParams","getSonetGroupAvailable","getLivefeedUrl","checkPermissions","feature","operation","entryTitle","entryDescription","entryDiskObjects","DISK_OBJECTS","entryUrl","LIVEFEED_URL","entrySuffix","groupsAvailable","GROUPS_AVAILABLE","isUndefined","LOG_ID","taskDescription","taskData","RESPONSIBLE_ID","CREATED_BY","UF_TASK_WEBDAV_FILES","sonetGroupIdList","push","GROUP_ID","runComponentAction","mode","resultData","createTaskSetContentSuccess","DATA","sourceEntityType","sourceEntityId","errors","error","createTaskSetContentFailure","onPopupClose","show","analyticsElement","isNil","analyticsSection","Uri","addParam","ta_sec","ta_el","taskId","taskLink","replace","UI","Notification","Center","notify","actions","click","balloon","close","popupDescription","join","contentNode","containerNode","getElementById","clean","appendChild","livefeedUrl","suffix","Post","urlToEdit","menuPopupWindow","dialog","bindOnResize","titleBar","className","Button","text","location","menuElement","ind","getMenuId","log_id","bFavorites","arMenuItemsAdditional","JSON","parse","e","bindElement","itemPinned","pinnedPostNode","pinnedState","onclick","PinnedPanelInstance","getMenuById","popupWindow","itemFavorites","__logChangeFavorites","arItems","html","href","menuItemText","menuItemIconDone","clipboard","isCopySupported","copy","adjust","attrs","it","currentTarget","pos","pos2","pos3","overflow","children","create","select","fx","time","step","start","finish","callback","hide","confirm","FeedInstance","nodeId","entryEntityType","isArray","concat","arParams","angle","offset","onPopupShow","ob","favoritesMenuItem","menuItems","contentContainer","menuItem","linkMenuItem","popupContainer","postId","groupId","postForm","PostForm","Informer","container","wrap","plus","currentSiteId","currentCounterType","counterDecrementStack","counterValue","lockCounterAnimation","isSpaceFeatureEnabled","currentUserId","currentSpaceId","informerFixed","informerAnimation","informerFixedAnimation","counterText","counterContainer","reloadContainer","icon","iconRotating","plusHidden","props","defaultValues","userId","spaceId","initNodes","hasMessage","addEventListener","showReloadAnimation","unfixWrap","subscribeOnSpaceCounters","subscribeOnLiveFeedCounters","counterData","isObjectLike","changeCounter","live","decrementCounter","command","eventParams","userFromEvent","spaces","currentSpace","find","space","currentSpaceCounter","metrics","countersLiveFeedTotal","Runtime","clone","valueToShow","changeAnimate","counter","zeroCounterFromDb","counterTextNode","reloadNode","showWrapAnimation","hideReloadAnimation","hideWrapAnimation","visibility","counterWaiterNode","counterNodeWaiter","fixWrap","counterContainerNode","hideReloadNode","Loader","feedContainer","feedMask","feedNoMask","loaderContainer","hideLoader","showLoader","animationName","MoreButton","onRecalculateLivefeedComments","baseEvent","informerBlock","moreBlock","more","postSeparator","recalcPost","arPos","blockHeight","bodyBlock","postBlock","postShort","buttonsList","getMoreButtons","buttonData","bodyBlockID","bodyNode","outerBlockID","outerNode","offsetWidth","innerNode","postTextInner","overflowX","moreButton","Animations","expand","moreButtonNode","classBlock","postText","classOuter","classInner","postTextInnerInner","heightLimit","textBlock","hasClickListener","informerBlockID","setMoreButtons","onLoadImageList","imageNode","outerBlock","comment","image","textType","Forum","Filter","filterId","filterApi","Main","filterManager","getById","getApi","showRefreshFade","filterValues","filterPromise","filterParams","autoResolve","PageInstance","refresh","useBXMainFilter","searchString","hideRefreshFade","tagValue","setFields","TAG","apply","filterContainer","getSearch","getSquares","getSearchString","pagetitleContainer","easing","duration","scroll","pageYOffset","makeEaseOut","transitions","quart","complete","animate","ContentView","fullContentArea","viewAreaList","findChildren","tag","i","findChild","UserContentView","registerViewArea","Page","loadStarted","stopTrackNextPage","requestMode","nextPageFirst","nextPageUrl","scrollInitialized","firstPageLastTS","firstPageLastId","commentFormUID","blogCommentFormUID","signedParameters","componentName","context","init","setRequestModeNew","siteTemplateId","assetsCheckSum","clearCommentsList","clearMoreButtons","InformerInstance","getSignedParameters","c","getComponentName","logajax","RELOAD","responseData","fulfill","emptyLivefeed","componentResult","EMPTY","forcePageRefresh","FORCE_PAGE_REFRESH","isFilterUsed","FILTER_USED","reload","emptyBlock","emptyTextNode","clearContainerExternal","LazyLoad","clearImages","pageNode","Math","floor","random","recalcPostsList","recalcCommentsList","registerAreaList","resetFlags","informerWrap","getWrap","showRefreshError","stubContainer","stubFirstContainer","setRequestModeMore","nextUrlParamsList","getNextPageUrl","getQueryParams","pageNumber","prevPageLogId","ts","noblog","decodeURI","queryParams","PAGE_NUMBER","LAST_LOG_TIMESTAMP","PREV_PAGE_LOG_ID","preset_filter_top_id","preset_filter_id","queryData","CREATED_BY_ID","flt_created_by_id","flt_date_datesel","flt_date_from","decodeURIComponent","flt_date_to","lastEntryTimestamp","LAST_TS","lastEntryId","LAST_ID","isNull","contentBlockId","f","recover","counterPreset","onFeedScroll","maxScroll","documentElement","innerHeight","getNextPage","CommentForm","taskIdList","resultFieldTaskIdList","ResultManager","taskResultCommentsData","assign","commentsIdList","getInstance","initResult","comments","obj","postData","ENTITY_XML_ID","currentEntity","ENTITY_TYPE","split","ENTITY_ID","parentId","comment_post_id","edit_id","act","form","onLightEditorShow","Tasks","showField","hideField","UF","arFiles","fileId","index","size","FILE_ID","FILE_NAME","FILE_SIZE","CONTENT_TYPE","UF_SONET_COM_DOC","USER_TYPE_ID","FIELD_NAME","VALUE","arDocs","UF_SONET_COM_FILE","arDFiles","LHEPostForm","reinitData","SLEC","editorId","Feed","entryData","feedInitialized","moreButtonDataList","Map","currentScrollPosition","setSignedParameters","setContext","setComponentName","onAnimationEnd","processSpoilerToggle","FilterInstance","isSpaceEnabled","crmEntityTypeName","crmEntityId","initEventsCrm","clickTag","noTasksNotificationCloseIcon","noTasksNotificationReadButton","setNoTasksNotificationRead","handleFullScreenChange","handleScrollChange","getFullScreenElement","scrollY","fullscreenElement","webkitFullscreenElement","mozFullScreenElement","msFullscreenElement","followNode","valueOld","valueNew","renderFollow","textNode","nodeToAdjust","favorites","adjustFavoritesControlItem","adjustFavoritesMenuItem","menuItemNode","getMenuTitle","deleteSuccess","deleteFailure","callback_start","minHeight","callback_complete","clear","set","notificationNode","removeChild","MoreButtonInstance"],"mappings":"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"}