From 84de25812b0f026e453ecee453fa340c5a9d3edb Mon Sep 17 00:00:00 2001 From: ritualsfinal Date: Fri, 31 May 2019 13:11:41 -0600 Subject: [PATCH 01/17] [feature] basic alert logic when signing up for concurrent shift --- laravel/app/Http/Controllers/SlotController.php | 15 ++++++++++++++- laravel/resources/views/app.blade.php | 6 ++++++ 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/laravel/app/Http/Controllers/SlotController.php b/laravel/app/Http/Controllers/SlotController.php index 73359ba7..24fe3a50 100644 --- a/laravel/app/Http/Controllers/SlotController.php +++ b/laravel/app/Http/Controllers/SlotController.php @@ -100,11 +100,24 @@ public function take(SlotRequest $request, Slot $slot) // Has somebody else already taken this slot? if(is_null($slot->user)) { + $concurrentSlot = Slot::where('user_id', Auth::user()->id) + ->where('start_date', $slot->start_date) + ->where('start_time', '<', $slot->end_time) + ->where('end_time', '>', $slot->start_time) + ->first(); + $slot->user_id = Auth::user()->id; $slot->save(); event(new SlotChanged($slot, ['status' => 'taken', 'name' => Auth::user()->name])); - $request->session()->flash('success', 'You signed up for a volunteer shift.'); + if($concurrentSlot) + { + $request->session()->flash('warning', 'You are currently also signed up elsewhere INSERT HERE'); + } + else + { + $request->session()->flash('success', 'You signed up for a volunteer shift.'); + } // If a password was used if($slot->schedule->password) diff --git a/laravel/resources/views/app.blade.php b/laravel/resources/views/app.blade.php index 7ec33ce7..121d5991 100644 --- a/laravel/resources/views/app.blade.php +++ b/laravel/resources/views/app.blade.php @@ -33,6 +33,12 @@ @endif + @if(Session::has('warning')) + + @endif + @if(Session::has('error'))