diff --git a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUser.php b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUser.php new file mode 100644 index 000000000..da9c285bd --- /dev/null +++ b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUser.php @@ -0,0 +1,46 @@ +authorizationHelper = $authorizationHelper; + $this->security = $security; + } + + public function getReachableCenters(string $role, ?Scope $scope = null): array + { + if (!$this->security->getUser() instanceof User) { + return []; + } + + return $this->authorizationHelper->getReachableCenters($this->security->getUser(), $role, $scope); + } + + public function getReachableScopes(string $role, $center): array + { + if (!$this->security->getUser() instanceof User) { + return []; + } + + return $this->authorizationHelper->getReachableScopes($this->security->getUser(), $role, $center); + } +} diff --git a/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUserInterface.php b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUserInterface.php new file mode 100644 index 000000000..cd3459aa9 --- /dev/null +++ b/src/Bundle/ChillMainBundle/Security/Authorization/AuthorizationHelperForCurrentUserInterface.php @@ -0,0 +1,28 @@ +