From bb295d8c620504063bb214049e6694ac1438b693 Mon Sep 17 00:00:00 2001 From: Matt Young Date: Sat, 1 Feb 2025 10:41:14 -0600 Subject: [PATCH] Set shirt size when user adds a student. --- app/Http/Controllers/StudentController.php | 4 ++++ app/Models/Student.php | 7 ++++++ resources/views/students/index.blade.php | 26 +++++++++++++++++++++- 3 files changed, 36 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/StudentController.php b/app/Http/Controllers/StudentController.php index 1b24434..32ff1e9 100644 --- a/app/Http/Controllers/StudentController.php +++ b/app/Http/Controllers/StudentController.php @@ -51,6 +51,7 @@ class StudentController extends Controller new UniqueFullNameAtSchool(request('first_name'), request('last_name'), Auth::user()->school_id), ], 'grade' => ['required', 'integer'], + 'shirt_size' => ['nullable'], ]); $student = Student::create([ @@ -59,6 +60,9 @@ class StudentController extends Controller 'grade' => request('grade'), 'school_id' => Auth::user()->school_id, ]); + if (request('shirt_size') !== 'none') { + $student->update(['optional_data->shirt_size' => $request['shirt_size']]); + } $message = 'Created student #'.$student->id.' - '.$student->full_name().'
Grade: '.$student->grade.'
School: '.$student->school->name; AuditLogEntry::create([ 'user' => auth()->user()->email, diff --git a/app/Models/Student.php b/app/Models/Student.php index dece4dd..67ae150 100644 --- a/app/Models/Student.php +++ b/app/Models/Student.php @@ -14,6 +14,13 @@ class Student extends Model protected $guarded = []; + protected function casts(): array + { + return [ + 'optional_data' => 'array', + ]; + } + public function school(): BelongsTo { return $this->belongsTo(School::class); diff --git a/resources/views/students/index.blade.php b/resources/views/students/index.blade.php index 090f5f4..a2b1968 100644 --- a/resources/views/students/index.blade.php +++ b/resources/views/students/index.blade.php @@ -10,7 +10,6 @@ - {{-- --}} Grade @@ -21,6 +20,25 @@ @php($n++); @endwhile + + @if(auditionSetting('student_data_collect_shirt_size')) + + Shirt Size + + + + + + + + + + + + + @endif + + Save @@ -35,6 +53,9 @@ Name Grade + @if(auditionSetting('student_data_collect_shirt_size')) + Shirt + @endif Edit @@ -46,6 +67,9 @@ {{ $student->full_name(true) }} {{ $student->grade }} + @if(auditionSetting('student_data_collect_shirt_size')) + sss + @endif @if( $student->entries_count === 0)