Newscoop\Acl\Storage::getRules PHP Method

getRules() public method

Get rules for role
public getRules ( Zend_Acl_Role_Interface $role ) : array
$role Zend_Acl_Role_Interface
return array
    public function getRules(\Zend_Acl_Role_Interface $role)
    {
        $em = $this->doctrine->getManager();
        $queryBuilder = $em->getRepository('Newscoop\\Entity\\Acl\\Rule')->createQueryBuilder('r')->select('r.resource, r.action, r.type')->where('r.role = :role')->setParameter('role', $role->getRoleId());
        if (is_a($role, '\\Newscoop\\Entity\\User\\Group')) {
            // @fix WOBS-568: ignore deny rules for roles
            $queryBuilder->andWhere('r.type = :allow')->setParameter('allow', 'allow');
        }
        return $queryBuilder->getQuery()->getArrayResult();
    }