- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/comments/task/commentposter.php
- Класс: BitrixTasksCommentsTaskCommentPoster
- Вызов: CommentPoster::prepareCommentsOnTaskExpiredSoon
private function prepareCommentsOnTaskExpiredSoon(array $taskData): array
{
$expiredSoonComments = [];
if ($this->getCommentByType(Comment::TYPE_EXPIRED_SOON))
{
return $expiredSoonComments;
}
$members = $this->getMembersForExpiredMessages($taskData);
if (empty($members))
{
$messageKey = 'COMMENT_POSTER_COMMENT_TASK_EXPIRED_SOON_NO_MEMBERS';
$messageKey = $this->getLastVersionedMessageKey($messageKey);
$replace = [];
}
else
{
$userToLinkFunction = function (int $userId) {
return $this->parseUserToLinked($userId);
};
$messageKey = 'COMMENT_POSTER_COMMENT_TASK_EXPIRED_SOON';
$messageKey = $this->getLastVersionedMessageKey($messageKey);
$replace = ['#MEMBERS#' => implode(', ', array_map($userToLinkFunction, $members))];
}
$liveParams = $this->prepareTaskExpiredSoonCommentLiveParams($taskData);
$expiredSoonComments[] = new Comment(
Loc::getMessage($messageKey, $replace),
$this->authorId,
Comment::TYPE_EXPIRED_SOON,
[[$messageKey, array_merge($replace, $liveParams)]]
);
return $expiredSoonComments;
}