src/Security/Voter/Message/EditVoter.php line 10

Open in your IDE?
  1. <?php
  2. namespace App\Security\Voter\Message;
  3. use App\Entity\Account\User;
  4. use App\Entity\ChannelUserData\ChannelUserData;
  5. use App\Entity\Chat\Message;
  6. use App\Service\Account\UserService;
  7. class EditVoter extends AbstractMessageVoter
  8. {
  9.     public function __construct(
  10.         UserService $userService,
  11.     ) {
  12.         parent::__construct($userService);
  13.     }
  14.     /**
  15.      * @param Message $subject
  16.      * @param User $user
  17.      * @return bool
  18.      */
  19.     protected function denyBeforeCheck($subjectUser $user): bool
  20.     {
  21.         return $subject->getCreatedBy()->getId() !== $user->getId();
  22.     }
  23.     public function supportedAttribute(): string
  24.     {
  25.         return 'NIM_EDIT';
  26.     }
  27.     protected function grant(User $user$subjectChannelUserData $channelUserData): int
  28.     {
  29.         return self::ACCESS_GRANTED;
  30.     }
  31. }