src/Aqarmap/Bundle/UserBundle/Security/Authorization/Voter/NonIndividualVoter.php line 10

  1. <?php
  2. namespace Aqarmap\Bundle\UserBundle\Security\Authorization\Voter;
  3. use Aqarmap\Bundle\UserBundle\Constant\UserTypes;
  4. use Aqarmap\Bundle\UserBundle\Entity\User;
  5. use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
  6. use Symfony\Component\Security\Core\Authorization\Voter\Voter;
  7. class NonIndividualVoter extends Voter
  8. {
  9. protected function voteOnAttribute($attribute, $subject, TokenInterface $token): bool
  10. {
  11. if (UserTypes::INDIVIDUAL === $subject->getUserType()) {
  12. return false;
  13. }
  14. return true;
  15. }
  16. public function supports($attribute, $subject): bool
  17. {
  18. return 'NON_INDIVIDUAL' === $attribute && $subject instanceof User;
  19. }
  20. }