diff --git a/src/Security/Voter/DispositionVoter.php b/src/Security/Voter/DispositionVoter.php index 9d55788..533e799 100644 --- a/src/Security/Voter/DispositionVoter.php +++ b/src/Security/Voter/DispositionVoter.php @@ -43,24 +43,16 @@ class DispositionVoter extends Voter $disposition = $subject; return match ($attribute) { - static::VIEW, static::EDIT, static::CONTRACT, static::INVOICE => $this->assertAdministrativeAccess() + static::VIEW, static::EDIT, static::CONTRACT, static::INVOICE => + $this->security->isGranted('ROLE_ADMINISTRATIVE') || $this->assertTeamerAccess($token, $disposition), - static::DELETE => $this->assertAdminAccess(), - static::FEEDBACK => $this->assertAdminAccess() || $this->assertHouseManagerAccess($token, $disposition), + static::DELETE => $this->security->isGranted('ROLE_ADMIN'), + static::FEEDBACK => $this->security->isGranted('ROLE_ADMINISTRATIVE') + || $this->assertHouseManagerAccess($token, $disposition), default => false, }; } - private function assertAdminAccess(): bool - { - return $this->security->isGranted('ROLE_ADMIN'); - } - - private function assertAdministrativeAccess(): bool - { - return $this->security->isGranted('ROLE_ADMINISTRATIVE'); - } - private function assertHouseManagerAccess(TokenInterface $token, Disposition $disposition): bool { if (false === $this->security->isGranted('ROLE_HOUSE_MANAGER')) {