예제 #1
0
 /**
  * Get dynamic resources
  *
  * @return array
  */
 public function getResources()
 {
     $em = $this->doctrine->getManager();
     $permissions = $em->getRepository('Newscoop\\Entity\\Acl\\Permission')->createQueryBuilder('p')->select('p.name')->getQuery()->getArrayResult();
     $resources = array();
     foreach ($permissions as $permission) {
         try {
             list($resource, $action) = PermissionToAcl::translate($permission['name']);
         } catch (\InvalidArgumentException $e) {
             // ignore obsolete permissions
             continue;
         }
         if (!isset($resources[$resource])) {
             $resources[$resource] = array();
         }
         $resources[$resource][] = $action;
     }
     return $resources;
 }
예제 #2
0
 /**
  * Get dynamic resources
  *
  * @return array
  */
 public function getResources()
 {
     $em = $this->doctrine->getManager();
     $repository = $em->getRepository('Newscoop\\Entity\\Acl\\Permission');
     $resources = array();
     foreach ($repository->findAll() as $permission) {
         try {
             list($resource, $action) = PermissionToAcl::translate($permission);
         } catch (\InvalidArgumentException $e) {
             // ignore obsolete permissions
             continue;
         }
         if (!isset($resources[$resource])) {
             $resources[$resource] = array();
         }
         $resources[$resource][] = $action;
     }
     return $resources;
 }