Newscoop\Entity\User::hasPermission PHP Méthode

hasPermission() public méthode

Check permissions
public hasPermission ( string $permission, string $resource = null, string $action = null ) : boolean
$permission string
$resource string
$action string
Résultat boolean
    public function hasPermission($permission, $resource = null, $action = null)
    {
        $blogService = \Zend_Registry::get('container')->getService('blog');
        if ($blogService->isBlogger($this)) {
            return true;
        }
        $acl = \Zend_Registry::get('acl')->getAcl($this);
        try {
            if (!$resource && !$action) {
                list($resource, $action) = PermissionToAcl::translate($permission);
            }
            if ($acl->isAllowed($this, strtolower($resource), strtolower($action))) {
                return true;
            } else {
                return false;
            }
        } catch (\Exception $e) {
            return false;
        }
    }

Usage Example

 public function let($die, \Doctrine\ORM\EntityManager $em, \Symfony\Component\Routing\Router $router, UserService $userService, \Newscoop\Entity\Repository\AutoIdRepository $repository, \Newscoop\Entity\User $user)
 {
     $em->getRepository('Newscoop\\Entity\\AutoId')->willReturn($repository);
     $em->persist(Argument::any())->willReturn(true);
     $em->flush(Argument::any())->willReturn(true);
     $em->remove(Argument::any())->willReturn(true);
     $repository->getNextTranslationPhraseId()->willReturn('7');
     $user->hasPermission('AddFile')->willReturn(true);
     $userService->getCurrentUser()->willReturn($user);
     $this->beConstructedWith(array('file_base_url' => "files/", 'file_directory' => realpath(__DIR__ . '/../../../newscoop/public/files') . '/', 'file_num_dirs_level_1' => 1000, 'file_num_dirs_level_2' => 1000), $em, $router, $userService);
 }
All Usage Examples Of Newscoop\Entity\User::hasPermission