From 9a9d567c78f80d62387e23b4af2620b395876e38 Mon Sep 17 00:00:00 2001 From: Matt Young Date: Wed, 12 Feb 2025 15:37:26 -0600 Subject: [PATCH] Show appropriate options on seating page for SCOBDA nomination ensembles --- .../ScobdaNominationSeatingController.php | 26 +++++++++++++++++++ .../scobda/admin/seating/index.blade.php | 22 +++++++++++----- 2 files changed, 42 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/NominationEnsembles/ScobdaNominationSeatingController.php b/app/Http/Controllers/NominationEnsembles/ScobdaNominationSeatingController.php index efa5be9..72ae571 100644 --- a/app/Http/Controllers/NominationEnsembles/ScobdaNominationSeatingController.php +++ b/app/Http/Controllers/NominationEnsembles/ScobdaNominationSeatingController.php @@ -42,6 +42,27 @@ class ScobdaNominationSeatingController extends Controller implements Nomination return $entry->data['rank']; }); + $validData = request()->validate([ + 'action' => ['required', 'in:seat,clear'], + ]); + $action = $validData['action']; + + if ($action == 'clear') { + foreach ($nominations as $nomination) { + $data = $nomination->data; + unset($data['accepted']); + $nomination->update(['data' => $data]); + } + + $data = $ensemble->data; + $data['seated'] = false; + $ensemble->data = $data; + $ensemble->update(); + + return redirect()->route('nomination.admin.seating.show', + ['ensemble' => $ensemble])->with('Seating Cleared'); + } + $acceptedNominations = collect(); $rankOn = 1; // Collect students to add to the ensemble @@ -72,6 +93,11 @@ class ScobdaNominationSeatingController extends Controller implements Nomination $nomination->update(['data' => $data]); } + $data = $ensemble->data; + $data['seated'] = true; + $ensemble->data = $data; + $ensemble->update(); + return redirect()->route('nomination.admin.seating.show', ['ensemble' => $ensemble])->with('Seating Complete'); } } diff --git a/resources/views/nomination_ensembles/scobda/admin/seating/index.blade.php b/resources/views/nomination_ensembles/scobda/admin/seating/index.blade.php index 9d1acd9..4370a76 100644 --- a/resources/views/nomination_ensembles/scobda/admin/seating/index.blade.php +++ b/resources/views/nomination_ensembles/scobda/admin/seating/index.blade.php @@ -22,11 +22,20 @@ {{ $ensemble->name }} - - - Reseat Ensemble - + + @if($ensemble->data['seated'] ?? false) + + + Clear Seats + + @else + + + Seat Ensemble + + @endif @@ -42,7 +51,8 @@ {{ $seatOn }} {{ $nom->student->full_name() }} - {{ $nom->student->school->name }} ({{ $nom->data['rank'] }}) + {{ $nom->student->school->name }} ({{ $nom->data['rank'] }}) + @php($seatOn++) @endforeach