- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/classes/general/user_counter.php
- Класс: CAllUserCounter
- Вызов: CAllUserCounter::getValuesFromDB
static function getValuesFromDB(int $userId = 0)
{
global $CACHE_MANAGER, $DB;
if (
CACHED_b_user_counter !== false
&& $CACHE_MANAGER->read(CACHED_b_user_counter, 'user_counter' . $userId, 'user_counter')
)
{
$result = $CACHE_MANAGER->get('user_counter' . $userId);
}
else
{
$strSQL = '
SELECT CODE, SITE_ID, CNT, ' . $DB->datetimeToTimestampFunction('LAST_DATE') . ' LAST_DATE_TS
FROM b_user_counter
WHERE USER_ID = ' . $userId;
$res = $DB->query($strSQL, false, 'File: ' . __FILE__ . '
Line: ' . __LINE__);
$result = [];
while ($rowFields = $res->fetch())
{
$rowFields['CODE'] = self::getGroupedCode($rowFields['CODE']);
$result[] = $rowFields;
}
$result = self::getValuesForCache($result);
if (CACHED_b_user_counter !== false)
{
$CACHE_MANAGER->set('user_counter' . $userId, $result);
}
}
return $result;
}