Работа с текущим авторизованным пользователем

С версии: 9.2.0
37

Часто возникает необходимость получить данные пользователя который в данный момент находится на сайте и в зависимости от его свойств показать какую-либо информацию ему или наоборот скрыть.

Для работы с ткущим пользователем необходимо получить объект этого пользователя. Сделать это можно следующим образом:

$user = di(\Johncms\Users\User::class);

После этого в переменной $user будут доступны все свойства, описанные в этом списке

Проверка авторизации пользователя

if ($user->is_valid) {
    echo 'Пользователь авторизован. Его логин: ' . $user->name;
} else {
    echo 'Пользователь не авторизован';
}

В этом примере если пользователь авторизован, выведется сообщение об этом и логин пользователя.

Проверка прав доступа

if ($user->rights === 9) {
    echo 'Пользователь супервизор!';
} else {
    echo 'Пользователь не супервизор';
}

В этом примере проверяем должность пользователя, и если пользователь супервизор, выведем ему сообщение об этом. Проверяется свойство rights и номер должности. Все номера должностей описаны в списке свойств.

Мы рассмотрели несколько частых примеров работы с текущим пользователем. По аналогии с этими примерами, вы можете использовать другие свойства пользователя и выводить их значения или же в зависимости от значений выводить или скрывать какую-либо информацию.