From d2de62a7d3eb944a8f040abf1e8216ae86321162 Mon Sep 17 00:00:00 2001 From: "waffle.lord" Date: Tue, 8 Oct 2024 09:24:44 -0400 Subject: [PATCH] implement mod delete functions --- app/Http/Controllers/ModController.php | 7 ++++++- app/Policies/ModPolicy.php | 5 ++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/app/Http/Controllers/ModController.php b/app/Http/Controllers/ModController.php index 4016d76..6dea3a7 100644 --- a/app/Http/Controllers/ModController.php +++ b/app/Http/Controllers/ModController.php @@ -55,5 +55,10 @@ class ModController extends Controller return new ModResource($mod); } - public function destroy(Mod $mod): void {} + public function destroy(Mod $mod): void + { + $this->authorize('delete', $mod); + + $mod->delete(); + } } diff --git a/app/Policies/ModPolicy.php b/app/Policies/ModPolicy.php index b5e9873..24c79ef 100644 --- a/app/Policies/ModPolicy.php +++ b/app/Policies/ModPolicy.php @@ -45,7 +45,10 @@ class ModPolicy */ public function delete(User $user, Mod $mod): bool { - return false; + // I'm guessing we want the mod author to also be able to do this? + // what if there are multiple authors? + // I'm leaving that out for now -waffle.lazy + return $user->isMod() || $user->isAdmin(); } /**