waUser

Работа с пользователями

Содержание...

Родительский класс — waContact.

Методы

  • getByLogin

    Возвращает экземпляр класса пользователя по его имени для входа (логину).

  • getLogin

    Возвращает имя пользователя для входа (логин).

  • getGroupIds

    Возвращает значения group_id, относящиеся к пользователю, из таблицы с настройками прав доступа.

  • getUsers

    Возвращает список пользователей.

  • getAllGroups

    Возвращает список всех групп пользователей.

  • getGroups

    Возвращает список групп, в которые включён пользователь.

  • getApps

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

  • revokeUser

    Удаляет у пользователя все его права доступа.

  • formatName

    Возвращает полное имя пользователя в соответствии с настроенным форматом.

public static function getByLogin ($login)

Возвращает экземпляр класса пользователя по его имени для входа (логину).

Параметры

  • $login

    Имя пользователя для входа (логин).

Пример

$admin = waUser::getByLogin('admin');

public function getLogin()

Возвращает имя пользователя для входа (логин).

Пример

$user = new waUser($contact_id);
$login = $user->getLogin();

public function getGroupIds()

Возвращает значения group_id, относящиеся к пользователю, из таблицы с настройками прав доступа wa_contact_rights, включая значение 0, соответствующее группе «Все контакты».

Пример

$user = new waUser($contact_id);
$group_ids = $user->getGroupIds();

public static function getUsers ($app_id = null)

Возвращает список пользователей — он может быть ограничен только теми, у кого есть доступ к указанному приложению.

Параметры

  • $app_id

    ID приложения, к которому должны иметь доступ возвращаемые пользователи.

Пример

$all_users = waUser::getUsers();
$myapp_users = waUser::getUsers('my_app');

public static function getAllGroups()

Возвращает список всех групп пользователей в виде массива: ключи элементов — ID групп, значения — названия групп.

Пример

waUser::getAllGroups()

Результат

[
    5 => 'Поддержка',
    1 => 'Администраторы',
    4 => 'Бухгалтерия',
    2 => 'Главный офис',
    3 => 'Удалённые',
]

public function getGroups ($with_names = false)

Возвращает список групп, в которые включён пользователь.

Параметры

  • $with_names

    Флаг, обозначающий формат возвращаемого значения:

    • true: ассоциативный массив названий групп, ключами которого являются ID групп;
    • false: простой массив ID групп.

Пример

(new waUser($contact_id))->getGroups()

Результат

[
    1
]

Пример

(new waUser($contact_id))->getGroups(true)

Результат

[
    1 => 'Администраторы',
]

public function getApps ($sorted = true)

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

Параметры

  • $sorted

    Флаг, обозначающий необходимость вернуть список приложений в том же порядке, в котором пользователь отсортировал их иконки в главном меню Webasyst.

Пример

(new waUser($contact_id))->getApps()

Результат

[
    'installer' => [
        'id' => 'installer',
        'name' => 'Инсталлер',
        'description' => 'Install new apps from the Webasyst Store',
        'icon' => [
            48 => 'wa-apps/installer/img/installer.svg',
            24 => 'wa-apps/installer/img/installer.svg',
            16 => 'wa-apps/installer/img/installer.svg',
        ],
        'mobile' => false,
        'version' => '2.7.2',
        'critical' => '2.7.2',
        'system' => true,
        'vendor' => 'webasyst',
        'csrf' => true,
        'ui' => '1.3,2.0',
        'build' => 732,
        'img' => 'wa-apps/installer/img/installer.svg',
    ],
    'site' => [
        'id' => 'site',
        'name' => 'Сайт',
        'icon' => [
            48 => 'wa-apps/site/img/site512.png',
            24 => 'wa-apps/site/img/site512.png',
            16 => 'wa-apps/site/img/site512.png',
        ],
        'sash_color' => '#49a2e0',
        'frontend' => true,
        'version' => '2.5.31',
        'critical' => '2.5.0',
        'vendor' => 'webasyst',
        'system' => true,
        'rights' => true,
        'plugins' => true,
        'themes' => true,
        'pages' => true,
        'auth' => true,
        'csrf' => true,
        'my_account' => true,
        'build' => 275,
        'img' => 'wa-apps/site/img/site512.png',
        'ui' => '1.3',
    ],
    //...
]

public static function revokeUser ($id, $clear_login_password = true)

Удаляет у пользователя все его права доступа.

Параметры

  • $id

    ID контакта пользователя.

  • $clear_login_password

    Флаг, обозначающий необходимость очистить имя для входа (логин) и пароль пользователя.

Пример

waUser::revokeUser($contact_id, true);

public static function formatName ($user)

Возвращает полное имя пользователя в соответствии с системной настройкой формата отображения имени.

Параметры

  • $user

    Экземпляр класса waUser, соответствующий пользователю, чьё имя нужно получить.

Пример

echo waUser::formatName(new waUser($contact_id));

Результат

Петров Василий Иванович