$WS_User

Внимание! Этот API удалён начиная с WS 0.95. Используйте CurrentUser.

Начиная с версии 0.95, глобальная переменная $WS_User удалена из публичного API.

Для проверки авторизации и получения данных текущего пользователя используйте статический класс CurrentUser.

Проверка авторизации

Старый вариант:

php
if (isset($WS_User['id'])) {
    // Пользователь авторизован.
}

Актуальный вариант:

php
if (CurrentUser::isAuthenticated()) {
    // Пользователь авторизован.
}

Получение данных

Старый вариант:

php
$userId = $WS_User['id'] ?? 0;
$login = $WS_User['login'] ?? '';

Актуальный вариант:

php
$userId = CurrentUser::get('id', 0);
$login = CurrentUser::get('login', '');

Получение метаданных

Старый вариант:

php
$phone = $WS_UserMeta['phone'] ?? '';

Актуальный вариант:

php
$phone = CurrentUser::meta('phone', '');

Соответствие вызовов

Старый вариант Актуальный вариант
isset($WS_User['id']) CurrentUser::isAuthenticated()
$WS_User['id'] CurrentUser::get('id')
$WS_User['login'] CurrentUser::get('login')
$WS_User['email'] CurrentUser::get('email')
$WS_User['role'] CurrentUser::get('role')
$WS_User['avatar'] CurrentUser::get('avatar')
$WS_UserMeta[$key] CurrentUser::meta($key)

Важные замечания

  • не объявляйте $WS_User и $WS_UserMeta через global
  • всегда проверяйте авторизацию перед выполнением защищённого действия
  • CurrentUser автоматически доступен после запуска CMS
  • не создавайте экземпляр CurrentUser
  • временный массив совместимости содержит не все прежние поля
  • наличие $WS_User внутри движка не делает переменную частью публичного API