Класс CUserCounter
Описание
Класс предназначен для работы с счётчиками.
При работе со счётчиками учитывайте следующее:
- Код счетчика может быть не более 50 символов;
- Значение счетчика не более 18 цифр;
- При вызове GetValue и GetValues с одинаковым значением переменных $user_id, $site_id запрос на выборку данных уйдет только при первом вызове за хит. В этом нет ничего страшного - так как методы инкремента, установки значений учитывают кэш и обновляют его по мере необходимости.
Как зафиксировать обновление счетчика
Для этого нужно весить обработчик события:
BX.addCustomEvent("onPullEvent", BX.delegate(function(module_id,command,params){ if (module_id == "main" && command == 'user_counter' && params[BX.message('SITE_ID')] && params[BX.message('SITE_ID')]['__НАЗВАНИЕ_ВАШЕГО_СЧЕТЧИКА__']) { // вызвать код для обновления счетчика // в params[BX.message('SITE_ID')]['__НАЗВАНИЕ_ВАШЕГО_СЧЕТЧИКА__'] будет новое значение счетчика } }, this));
Для мобильной версии:
BX.addCustomEvent("onPull", BX.delegate(function(data){ if (data.module_id == "main" && data.command == 'user_counter' && data.params[BX.message('SITE_ID')] && data.params[BX.message('SITE_ID')]['__НАЗВАНИЕ_ВАШЕГО_СЧЕТЧИКА__']) { // вызвать код для обновления счетчика // в data.params[BX.message('SITE_ID')]['__НАЗВАНИЕ_ВАШЕГО_СЧЕТЧИКА__'] будет новое значение счетчика } }, this));
Список методов
Метод | Описание | С версии |
---|---|---|
GetValues | Получение всех счетчиков пользователя. | 11.5.2 |
GetValue | Получение определенного счетчика пользователя. | 11.5.2 |
Increment | Увеличение счетчика на единицу. | 11.5.2 |
Set | Задаёт счетчику произвольное число. | 11.5.2 |
Clear | Обнуление счетчика. | 11.5.2 |
ClearAll | Обнуление всех счетчиков. | 11.5.2 |
ClearByTag | Обнуление всех счетчиков по тегу. | 11.5.6 |
Decrement | Уменьшение счетчика на нужное значение. | 11.5.6 |
GetAllValues | Возвращает все значения для всех доступных сайтов. | 12.5.8 |
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.