Блокировка и logout заблокированных пользователей.

Доброго времени суток! Заметил, что с коробки, у Modx странно работает блокировка пользователей, а именно пункт «заблокирован после». Пользователю блокируется вход после выбранной даты, но пока он не вышел — может продолжать просматривать весь сайт + не выставляется *true* в поле *заблокирован*. Хотел это исправить, сначала через сниппет примитивным кодом для проверки:
$profile = $modx->user->getOne('Profile');
$check_date = time();
$block_date = $profile->get('blockedafter');
if ($block_date > $check_date) {
  $block_check = false;
} else {
  $block_check = true;
}
if ($block_check) {
  $profile->set('blocked', true);
  $profile->save();
  $response = $response = $modx->runProcessor('/security/logout');  
}

Все вроде работает даже без *причесывания*, но потом захотелось избавится от вызова сниппета в шаблонах и переделать в плагин. Установил UsersOnline и в его плагин добавил проверку на *blockedafter* и установку *true* в поле заблокирован. И все вроде работает, но блокирует всех пользователей, а не только пользователя у которого прошел доступ(((
Иван
30 сентября 2017, 17:45
modx.pro
675
0

Комментарии: 0

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0