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

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

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

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

После этого в переменной **$user** будут доступны все свойства, описанные в [этом списке](https://johncms.com/documentation/user_fields/)

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

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

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

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

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

В этом примере проверяем должность пользователя, и если пользователь супервизор, выведем ему сообщение об этом. Проверяется свойство rights и номер должности. Все номера должностей описаны в [списке свойств](https://johncms.com/documentation/user_fields/).

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


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.johncms.com/master/polzovateli/rabota-s-tekushim-avtorizovannym-polzovatelem.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
