Imbo\EventListener\AccessControl::loadGroups PHP Метод

loadGroups() публичный Метод

Load groups from the configured access control adapter
public loadGroups ( Imbo\EventManager\EventInterface $event )
$event Imbo\EventManager\EventInterface An event instance
    public function loadGroups(EventInterface $event)
    {
        $query = new GroupQuery();
        $params = $event->getRequest()->query;
        if ($params->has('page')) {
            $query->page($params->get('page'));
        }
        if ($params->has('limit')) {
            $query->limit($params->get('limit'));
        }
        $response = $event->getResponse();
        $aclAdapter = $event->getAccessControl();
        // Create the model and set some pagination values
        $model = new GroupsModel();
        $model->setLimit($query->limit())->setPage($query->page());
        $groups = $aclAdapter->getGroups($query, $model);
        $modelGroups = [];
        foreach ($groups as $groupName => $resources) {
            $modelGroups[] = ['name' => $groupName, 'resources' => $resources];
        }
        $model->setGroups($modelGroups);
        $response->setModel($model);
    }