Advertisement
booradleys

BjyAuthorize ZfcUserDoctrine Provider

Jul 6th, 2012
130
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.62 KB | None | 0 0
  1. <?php
  2.  
  3. namespace BjyAuthorize\Provider\Identity;
  4.  
  5. use BjyAuthorize\Acl\Role;
  6. use Doctrine\ORM\EntityManager;
  7.  
  8. class ZfcUserDoctrine implements ProviderInterface
  9. {
  10.     protected $userService;
  11.     protected $defaultRole;
  12.  
  13.     public function __construct(EntityManager $em)
  14.     {
  15.         $this->em = $em;
  16.     }
  17.  
  18.     public function getIdentityRoles()
  19.     {
  20.         var_dump($this->userService->getAuthService());exit;
  21.         $authService = $this->userService->getAuthService();
  22.  
  23.         if (!$authService->hasIdentity()) {
  24.             // get default/guest role
  25.             return $this->getDefaultRole();
  26.         } else {
  27.             // get roles associated with the logged in user            
  28.             $builder = new \Doctrine\DBAL\Query\QueryBuilder($this->em->getConnection());          
  29.             $builder->select("role.role_id")
  30.                 ->from('user_role_linker', 'user_role_linker')
  31.                 ->where('role.user_id = ?', $authService->getIdentity()->getId());
  32.            
  33.             $result = $builder->execute();
  34.            
  35.             $roles = array();
  36.             foreach($result as $row) {
  37.                 $roles[] = $row['role_id'];
  38.             }
  39.             return $roles;
  40.         }
  41.     }
  42.  
  43.     public function getUserService()
  44.     {
  45.         return $this->userService;
  46.     }
  47.  
  48.     public function setUserService($userService)
  49.     {
  50.         $this->userService = $userService;
  51.         return $this;
  52.     }
  53.  
  54.     public function getDefaultRole()
  55.     {
  56.         return $this->defaultRole;
  57.     }
  58.  
  59.     public function setDefaultRole($defaultRole)
  60.     {
  61.         $this->defaultRole = $defaultRole;
  62.         return $this;
  63.     }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement