[modx] Скрипт для создания группы пользователей Users

13
<?php
$policy_name = 'Users';   // Имя группы пользователей
$policy_data = '{"load":true,"list":true,"view":true,"save":true,"remove":true,"copy":true,"view_unpublished":false}';
$role_rank = 9999;

// Создаем новый шаблон политики доступа
$policy = $modx->newObject('modAccessPolicy');
$policy->fromArray(array(
    'name' => $policy_name,
    'description' => 'User access control',
    'template' => 6,
    'data' => $policy_data,
    'lexicon' => 'permissions'
));
$policy->save();
$policyID = $policy->get('id');

// Создаем роль
$role = $modx->newObject('modUserGroupRole');
$role->fromArray(array(
    'name' => $policy_name,
    'authority' => $role_rank
));
$role->save();

// Создаем группу пользователей
$group = $modx->newObject('modUserGroup');
$group->fromArray(array(
    'name' => $policy_name,
    'parent' => 0,
    'rank' => 0,
    'dashboard' => 1
));
$group->save();
$groupID = $group->get('id');

// Редактируем контекст - web для группу пользователей
$contextaccess_web = $modx->newObject('modAccessContext');
$contextaccess_web->fromArray(array(
    'target' => 'web',
    'principal_class' => 'modUserGroup',
    'principal' => $groupID,
    'authority' => $role_rank,
    'policy' => $policyID
));
$contextaccess_web->save();