Imbo\Resource\AccessRules::getRules PHP Method

getRules() public method

Get access rules for the specified public key
public getRules ( Imbo\EventManager\EventInterface $event )
$event Imbo\EventManager\EventInterface The current event
    public function getRules(EventInterface $event)
    {
        $request = $event->getRequest();
        $publicKey = $request->getRoute()->get('publickey');
        $accessControl = $event->getAccessControl();
        $keyExists = $accessControl->publicKeyExists($publicKey);
        if (!$keyExists) {
            throw new RuntimeException('Public key not found', 404);
        }
        $accessList = $accessControl->getAccessListForPublicKey($publicKey);
        if ($request->query->has('expandGroups')) {
            foreach ($accessList as &$rule) {
                if (!isset($rule['group'])) {
                    continue;
                }
                $rule['resources'] = $accessControl->getGroup($rule['group']);
            }
        }
        $model = new AccessRulesModel();
        $model->setRules($accessList);
        $event->getResponse()->setModel($model);
    }