• Модуль: im
  • Путь к файлу: ~/bitrix/modules/im/classes/general/im_messenger.php
  • Класс: CIMMessenger
  • Вызов: CIMMessenger::prepareUsersForMention
static function prepareUsersForMention(array $forUsers, $params): array
{
	if (empty($forUsers))
	{
		return [];
	}

	$usersForMention = [];
	foreach ($forUsers as $userId)
	{
		if (!CIMSettings::GetNotifyAccess($userId, 'im', 'mention', CIMSettings::CLIENT_SITE))
		{
			continue;
		}

		if ($params['CHAT_TYPE'] == IM_MESSAGE_OPEN)
		{
			if (
				!isset($params['CHAT_RELATION'][$userId])
				|| $params['CHAT_RELATION'][$userId]['NOTIFY_BLOCK'] == 'Y'
			)
			{
				$usersForMention[$userId] = $userId;
			}
		}
		else
		{
			if (
				isset($params['CHAT_RELATION'][$userId])
				&& $params['CHAT_RELATION'][$userId]['NOTIFY_BLOCK'] == 'Y'
			)
			{
				$usersForMention[$userId] = $userId;
			}
		}
	}

	return $usersForMention;
}