X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;ds=sidebyside;f=app%2FPolicies%2FTournamentPolicy.php;h=5942b7f7979c8ff215275b9e6a83d6853e8624b7;hb=eca3f0074e6f9e882b91893e554ce249e25338de;hp=fd2a781e87db325e2322e517f7b1442dde0a55f8;hpb=c30ac282dde3d746d6a7762ee18c70b4416500b5;p=alttp.git diff --git a/app/Policies/TournamentPolicy.php b/app/Policies/TournamentPolicy.php index fd2a781..5942b7f 100644 --- a/app/Policies/TournamentPolicy.php +++ b/app/Policies/TournamentPolicy.php @@ -16,7 +16,7 @@ class TournamentPolicy * @param \App\Models\User $user * @return \Illuminate\Auth\Access\Response|bool */ - public function viewAny(User $user) + public function viewAny(?User $user) { return true; } @@ -28,7 +28,7 @@ class TournamentPolicy * @param \App\Models\Tournament $tournament * @return \Illuminate\Auth\Access\Response|bool */ - public function view(User $user, Tournament $tournament) + public function view(?User $user, Tournament $tournament) { return true; } @@ -41,7 +41,7 @@ class TournamentPolicy */ public function create(User $user) { - return $user->role === 'admin'; + return $user->isAdmin(); } /** @@ -53,7 +53,7 @@ class TournamentPolicy */ public function update(User $user, Tournament $tournament) { - return $user->role === 'admin'; + return $user->isTournamentAdmin($tournament); } /** @@ -101,7 +101,7 @@ class TournamentPolicy */ public function addRound(User $user, Tournament $tournament) { - return $user->role === 'admin' || $user->isParticipant($tournament); + return !$tournament->locked && ($user->isRunner($tournament) || $user->isTournamentAdmin($tournament)); } /** @@ -113,7 +113,7 @@ class TournamentPolicy */ public function viewProtocol(User $user, Tournament $tournament) { - return $user->role === 'admin'; + return $user->isTournamentCrew($tournament); } }