- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/forum/task/comment.php
- Класс: BitrixTasksIntegrationForumTaskComment
- Вызов: Comment::processResultData
static function processResultData($commentId = 0): void
{
$isTaskResult = false;
if (!BitrixMainApplication::getInstance()->getContext()->getRequest()->getPost('IS_TASK_RESULT_FORM'))
{
return;
}
if (BitrixMainApplication::getInstance()->getContext()->getRequest()->getPost('IS_TASK_RESULT') === 'Y')
{
$isTaskResult = true;
}
if ($commentId > 0)
{
AddEventHandler(
'forum',
'onBeforeMessageUpdate',
static function($id, &$fields) use ($isTaskResult) {
if (
!array_key_exists('SERVICE_TYPE', $fields)
|| !$fields['SERVICE_TYPE']
)
{
$fields['SERVICE_DATA'] = ($isTaskResult ? ResultManager::COMMENT_SERVICE_DATA : null);
}
}
);
}
else
{
AddEventHandler(
'forum',
'onBeforeMessageAdd',
static function(&$fields) use ($isTaskResult) {
if (
$isTaskResult
&& (
!array_key_exists('SERVICE_TYPE', $fields)
|| !$fields['SERVICE_TYPE']
)
)
{
$fields['SERVICE_DATA'] = ResultManager::COMMENT_SERVICE_DATA;
}
}
);
}
}