public function isGranted($permission, $context = null)
{
$roles = $this->roleService->getIdentityRoles();
if (empty($roles)) {
return false;
}
if (!$this->rbac->isGranted($roles, $permission)) {
return false;
}
if ($this->hasAssertion($permission)) {
return $this->assert($this->assertions[(string) $permission], $context);
}
return true;
}
public function updateAction() { $request = $this->getRequest(); $recipe = $this->readService->findById($this->params('id')); if (false === $this->authorizationService->isGranted('recipe.manage', $recipe)) { throw new UnauthorizedException('Insufficient Permissions'); } $viewModel = new ViewModel(); $viewModel->setTemplate('recipe/update'); $viewModel->setVariables(['form' => $this->form]); $this->form->bind($recipe); if ($request->isPost()) { $this->form->setData($request->getPost()); if ($this->form->isValid()) { try { $this->writeService->save($this->form->getData()); $this->flashMessenger()->addSuccessMessage('Rezept erfolgreich aktualisiert'); $this->redirect()->toRoute('recipe/read/update', ['id' => $this->params('id')]); } catch (\Exception $e) { var_dump($e->getMessage()); } } } $this->layout('layout/backend'); return $viewModel; }