- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/classes/general/commentitem.php
- Класс: CTaskCommentItem
- Вызов: CTaskCommentItem::parseCommentPostMessage
static function parseCommentPostMessage(array $comment): array
{
if (
isset($comment['SERVICE_TYPE'])
&& $serviceProvider = BitrixForumCommentsServiceManager::find([
'SERVICE_TYPE' => (int)$comment['SERVICE_TYPE'],
])
)
{
$serviceData = ($comment['SERVICE_DATA'] ?? $comment['POST_MESSAGE']);
$comment['POST_MESSAGE'] = $serviceProvider->getText($serviceData);
} // new
elseif ($commentAuxProvider = SocialnetworkCommentAuxBase::findProvider(
['POST_TEXT' => $comment['POST_MESSAGE']],
['needSetParams' => false]
)) // old
{
$forumPostLivefeedProvider = new SocialnetworkLivefeedForumPost();
$dbres = SocialnetworkLogCommentTable::getList([
'filter' => [
'SOURCE_ID' => $comment['ID'],
'EVENT_ID' => $forumPostLivefeedProvider->getEventId(),
],
'select' => ['EVENT_ID', 'SHARE_DEST', 'LOG_ID'],
]);
if ($sonetCommentFields = $dbres->fetch())
{
$auxParams = $commentAuxProvider->getParamsFromFields($sonetCommentFields);
if (!empty($auxParams))
{
$commentAuxProvider->setParams($auxParams);
$comment['POST_MESSAGE'] = $commentAuxProvider->getText();
}
}
}
return $comment;
}