/** * @param string $attribute * @param UserMadeReminderInterface $reminder * @param UserInterface $user * @return bool */ protected function isGranted($attribute, $reminder, $user = null) { if (!$user instanceof UserInterface) { return false; } switch ($attribute) { // Users can perform any CRUD operations on their own reminders. // Check if the given reminder's owning user is the given user. case self::CREATE: case self::VIEW: case self::EDIT: case self::DELETE: return $user->getId() === $reminder->getUser()->getId(); break; } return false; }
/** * @param string $attribute * @param UserMadeReminderInterface $reminder * @param TokenInterface $token * @return bool */ protected function voteOnAttribute($attribute, $reminder, TokenInterface $token) { $user = $token->getUser(); if (!$user instanceof UserInterface) { return false; } switch ($attribute) { // Users can perform any CRUD operations on their own reminders. // Check if the given reminder's owning user is the given user. case self::CREATE: case self::VIEW: case self::EDIT: case self::DELETE: return $this->usersAreIdentical($user, $reminder->getUser()); break; } return false; }