- Модуль: imopenlines
- Путь к файлу: ~/bitrix/modules/imopenlines/lib/queue.php
- Класс: BitrixImOpenLinesQueue
- Вызов: Queue::getQueueOperatorData
static function getQueueOperatorData($userId, $lineId)
{
$lineId = (int)$lineId;
$userId = (int)$userId;
$queue = false;
$cache = new Cache();
if ($lineId > 0 && $userId > 0)
{
$params = [
'select' => ['USER_NAME', 'USER_WORK_POSITION', 'USER_AVATAR', 'USER_AVATAR_ID'],
'filter' => [
'CONFIG_ID' => $lineId,
'USER_ID' => $userId
],
'order' => [
'SORT' => 'ASC',
'ID' => 'ASC'
],
];
$cache->setLineId($lineId);
$cache->setUserId($userId);
if ($cache->initCacheQueueOperatorData())
{
$queue = $cache->getVarsQueueOperatorData();
}
else
{
$cache->startCacheQueueOperatorData();
$queue = self::getList($params)->fetch();
if (empty($queue['USER_AVATAR']))
{
$queue['USER_AVATAR'] = ImUser::getInstance($userId)->getAvatar();
}
$cache->endCacheQueueOperatorData($queue);
}
}
return $queue;
}