- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/integration/im/notification/usecase/commentcreated.php
- Класс: BitrixTasksIntegrationIMNotificationUseCaseCommentCreated
- Вызов: CommentCreated::cropMessage
private function cropMessage(string $message): string
{
// cropped message to instant messenger
if (mb_strlen($message) >= 100)
{
$dot = '...';
$message = mb_substr($message, 0, 99);
if (mb_substr($message, -1) === '[')
{
$message = mb_substr($message, 0, 98);
}
if (
(($lastLinkPosition = mb_strrpos($message, '[u')) !== false)
|| (($lastLinkPosition = mb_strrpos($message, 'http://')) !== false)
|| (($lastLinkPosition = mb_strrpos($message, 'https://')) !== false)
|| (($lastLinkPosition = mb_strrpos($message, 'ftp://')) !== false)
|| (($lastLinkPosition = mb_strrpos($message, 'ftps://')) !== false)
)
{
if (mb_strpos($message, ' ', $lastLinkPosition) === false)
{
$message = mb_substr($message, 0, $lastLinkPosition);
}
}
$message .= $dot;
}
return $message;
}