diff --git a/src/Http/Controllers/Squads/ApplicationsController.php b/src/Http/Controllers/Squads/ApplicationsController.php index 46974dc0c..5f4b6db97 100644 --- a/src/Http/Controllers/Squads/ApplicationsController.php +++ b/src/Http/Controllers/Squads/ApplicationsController.php @@ -64,6 +64,10 @@ public function show(Squad $squad, int $id) */ public function store(Request $request, Squad $squad) { + if(!$squad->isUserEligible(auth()->user())) { + return redirect()->back()->with('error','You are not eligible for this squad!'); + } + // in case the squad is manual and does not contain any moderator // applications are self-approved. if ($squad->type == 'manual' && $squad->moderators->isEmpty()) { @@ -108,6 +112,10 @@ public function approve(Squad $squad, int $id) { $application = SquadApplication::with('squad', 'user')->find($id); + if(!$squad->isUserEligible($application->user)) { + return redirect()->back()->with('error','The applicant is not eligible for this squad!'); + } + $squad->members()->save($application->user); $message = sprintf('Approved application from %s into squad %s.',