src/SettingsBundle/Security/UserNylasModuleVoter.php line 12

Open in your IDE?
  1. <?php
  2. namespace SettingsBundle\Security;
  3. use SettingsBundle\Entity\Module\UserNylasModule;
  4. use Symfony\Component\Security\Core\Authentication\Token\TokenInterface;
  5. use Symfony\Component\Security\Core\Authorization\Voter\Voter;
  6. /**
  7.  * Class UserNylasModuleVoter.
  8.  */
  9. class UserNylasModuleVoter extends Voter
  10. {
  11.     public const ADD 'add';
  12.     /**
  13.      * {@inheritdoc}
  14.      */
  15.     protected function supports($attribute$subject): bool
  16.     {
  17.         return $attribute === self::ADD && $subject instanceof UserNylasModule;
  18.     }
  19.     /**
  20.      * {@inheritdoc}
  21.      * @param UserNylasModule $subject
  22.      */
  23.     protected function voteOnAttribute($attribute$subjectTokenInterface $token): bool
  24.     {
  25.         return !($subject->getAvailableSynchronizations() <= 0);
  26.     }
  27. }