Skip to content

Commit

Permalink
Merge pull request #63 from anzusystems/feature_businessLogicVote_nul…
Browse files Browse the repository at this point in the history
…lable

Refactor business logic vote handling in AbstractVoter
  • Loading branch information
TomasHermanek authored Aug 14, 2024
2 parents c194007 + a125c8d commit 8b1f6d3
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions src/Security/Voter/AbstractVoter.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,17 +38,18 @@ protected function voteOnAttribute(string $attribute, mixed $subject, TokenInter
return true;
}

// If specific business logic allows, grant access
if ($this->businessLogicVote($attribute, $subject, $user)) {
return true;
// Allow to define custom business logic vote
$vote = $this->businessLogicVote($attribute, $subject, $user);
if (false === (null === $vote)) {
return $vote;
}

return $this->permissionVote($attribute, $subject, $user);
}

protected function businessLogicVote(string $attribute, mixed $subject, AnzuUser $user): bool
protected function businessLogicVote(string $attribute, mixed $subject, AnzuUser $user): ?bool
{
return false;
return null;
}

protected function permissionVote(string $attribute, mixed $subject, AnzuUser $user): bool
Expand Down

0 comments on commit 8b1f6d3

Please sign in to comment.