- Модуль: im
- Путь к файлу: ~/bitrix/modules/im/lib/V2/Chat/FavoriteChat.php
- Класс: BitrixImV2ChatFavoriteChat
- Вызов: FavoriteChat::find
static function find(array $params = [], ?Context $context = null): Result
{
$result = new Result;
if (empty($params['TO_USER_ID']))
{
$context = $context ?? Locator::getContext();
$params['TO_USER_ID'] = $context->getUserId();
}
if ($params['TO_USER_ID'] <= 0)
{
return $result->addError(new ChatError(ChatError::WRONG_RECIPIENT));
}
$row = ChatTable::query()
->setSelect(['ID', 'TYPE', 'ENTITY_TYPE', 'ENTITY_ID'])
->where('TYPE', self::IM_TYPE_PRIVATE)
->where('ENTITY_TYPE', self::ENTITY_TYPE_FAVORITE)
->where('AUTHOR_ID', (int)$params['TO_USER_ID'])
->fetch()
;
if ($row)
{
$result->setResult([
'ID' => (int)$row['ID'],
'TYPE' => $row['TYPE'],
'ENTITY_TYPE' => $row['ENTITY_TYPE'],
'ENTITY_ID' => $row['ENTITY_ID'],
]);
}
return $result;
}