Справка

Оператор [check] - Доступность действия для пользователя

Ссылка на оператор в списке

Аргументы:
- название действия (строка/число, обязательно к заполнению)
- макс.кол-во действий (строка/число, обязательно к заполнению)
- период отслеживания (в часах, "!в минутах"), 0 - за весь период сбора статистики (строка/число)

Результат: Значение (текст, числа, дата)

Проверяет доступность действия для пользователя. И, если действие доступно, отмечает его совершение.

В проверке участвуют такие параметры, как максимально возможное кол-во действий и период отслеживания. Если период отслеживания не указан, то подразумевается весь доступный период (на протяжении которого собиралась данная статистика совершённых действий).

Период проверки указывается в часах. Если перед периодом указан воскл.знак (например: '!5'), то период указывается в минутах.

Для того, чтобы посмотреть сколько доступных попыток осталось у пользователя, используйте команду [view_action].

Например, разрешим добавлять комментарий не чаще 5 раз в минуту.
Для этого сделаем следующую проверку:
[max=5]
[period='!1']
[if user.check('add_comment',$max,$period)]
  [* код добавления комментария *]
  В ближайшее время вы можете добавить ещё
  [c=user.view_action('add_comment',$period)]
  [($max-$c)]
  [($max-$c).strnum(
    'комментарий',
    'комментария',
    'комментариев')]

[else]
  Вы исчерпали количество попыток.
  Возвращайтесь позже.
[/if]

Данная команда является копией аналогичных команд из раздела "Статистика", с той разницей, что в данном случае привязка идёт к идентификатору пользователя, а не его IP-адресу. Если же идентификатор недоступен (пользователь не авторизован), то только тогда используется IP-адрес.

Действия, зафиксированные в методе пользователя не пересекаются с идентичными действиями, зафиксированными в методе статистики.