/** * Is granted * * @param string $slug * * @return boolean */ private function isGranted($slug) { $roles = $this->user->getRoles(); /** @var Role $role */ if (in_array('ROLE_ADMIN', $roles)) { return true; } $granted = false; $roleMenu = $this->repository->findOneBySlug($slug); if ($roleMenu instanceof RoleMenu) { if (count($roleMenu->getRoles())) { $granted = false; foreach ($roleMenu->getArrayRoles() as $role) { if (in_array($role, $roles)) { $granted = true; } } } } return $granted; }