public function initAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $acls = (include __DIR__ . '/../../config/autoload/acl.php'); $allResources = array(); $allRoles = array(); foreach ($acls as $resource => $actions) { foreach ($actions as $action => $roles) { $resourceString = $resource . '/' . $action; if (!$acl->hasResource($resourceString)) { $acl->addResource(new \Zend\Permissions\Acl\Resource\GenericResource($resourceString)); } foreach ($roles as $role) { if (!in_array($role, $allRoles)) { $allRoles[] = $role; $role = new \Zend\Permissions\Acl\Role\GenericRole($role); $acl->addRole($role); } $acl->allow($role, $resourceString); } } } //setting to view $e->getViewModel()->acl = $acl; }
public function initNavAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $roles = (include __DIR__ . '\\config\\module.acl.roles.php'); $allResources = array(); foreach ($roles as $role => $resources) { $role = new \Zend\Permissions\Acl\Role\GenericRole($role); $acl->addRole($role); $allResources = array_merge($resources, $allResources); //adding resources foreach ($resources as $resource) { // Edit 4 if (!$acl->hasResource($resource)) { $acl->addResource(new \Zend\Permissions\Acl\Resource\GenericResource($resource)); } } //adding restrictions foreach ($resources as $resource) { $acl->allow($role, $resource); } } //testing //echo var_dump($acl->isAllowed('ADMIN','logout')); // echo var_dump($acl->isAllowed('guest','logout')); //setting to view $e->getViewModel()->acl = $acl; }
public function getViewHelperConfig() { return array('factories' => array('navigation' => function (\Zend\View\HelperPluginManager $pm) { // Setup ACL: $acl = new \Zend\Permissions\Acl\Acl(); $acl->addRole(new GenericRole('member')); $acl->addRole(new GenericRole('admin')); $acl->addResource(new GenericResource('mvc:admin')); $acl->addResource(new GenericResource('mvc:community.account')); $acl->allow('member', 'mvc:community.account'); $acl->allow('admin', null); // Get an instance of the proxy helper $navigation = $pm->get('Zend\\View\\Helper\\Navigation'); // Store ACL and role in the proxy helper: $navigation->setAcl($acl)->setRole('member'); // Return the new navigation helper instance return $navigation; })); }
public function initAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $roles = (include __DIR__ . '/config/module.acl.roles.php'); $allResources = array(); foreach ($roles as $role => $resources) { $role = new \Zend\Permissions\Acl\Role\GenericRole($role); $acl->addRole($role); //adding resources foreach ($resources as $resource) { // Edit 4 if (!$acl->hasResource($resource)) { $acl->addResource(new \Zend\Permissions\Acl\Resource\GenericResource($resource)); } $acl->allow($role, $resource); } } //setting to view $e->getViewModel()->acl = $acl; }
public function initAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $roles = (include __DIR__ . '/config/module.acl.roles.php'); $allResources = array(); foreach ($roles as $role => $values) { $resources = $values['resources']; $role = new \Zend\Permissions\Acl\Role\GenericRole($role); $acl->addRole($role, $values['inherits']); $allResources = array_merge($resources, $allResources); //Resources foreach ($resources as $resource) { if (!$acl->hasResource($resource)) { $acl->addResource(new \Zend\Permissions\Acl\Resource\GenericResource($resource)); } } //Restrictions foreach ($resources as $resource) { $acl->allow($role, $resource); } } //setting to view $e->getViewModel()->acl = $acl; }
/** * Initiate ACLs */ public function initAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $roles = (include dirname(dirname(__DIR__)) . '/config/acl.config.php'); $allResources = array(); foreach ($roles as $role => $resources) { $role = new \Zend\Permissions\Acl\Role\GenericRole($role); $acl->addRole($role); $allResources = array_merge($resources, $allResources); //adding resources foreach ($resources as $resource) { if (!$acl->hasResource($resource)) { $acl->addResource(new \Zend\Permissions\Acl\Resource\GenericResource($resource)); } } //adding restrictions foreach ($resources as $resource) { $acl->allow($role, $resource); } } //setting to view $e->getViewModel()->acl = $acl; }
public function initAcl(MvcEvent $e) { $acl = new \Zend\Permissions\Acl\Acl(); $roleGuest = new Role('guest'); $acl->addRole($roleGuest); $acl->addRole(new Role('user'), $roleGuest); $acl->addRole(new Role('admin'), 'user'); $acl->addResource(new Resource('User')); $acl->addResource(new Resource('Product')); $acl->addResource(new Resource('Productadmin')); // Guest may only view content - allow($roles, $resources, $privileges) $acl->allow($roleGuest, 'User'); //$acl->allow($roleGuest, 'Product', 'index'); $acl->allow($roleGuest, 'Product', array('index', 'view')); $acl->allow('user', 'Product', array('shoppingCart', 'shoppingCartContent')); $acl->allow('admin', 'Product'); $acl->allow('admin', 'Productadmin'); $e->getViewModel()->acl = $acl; }