is_admin) abort(403); $entries = Entry::with(['student.school','audition'])->orderBy('created_at','DESC')->paginate(10); return view('admin.entries.index', ['entries' => $entries] ); } public function create() { if(! Auth::user()->is_admin) abort(403); $students = Student::with('school')->orderBy('last_name')->orderBy('first_name')->get(); $auditions = Audition::orderBy('name')->get(); return view('admin.entries.create', ['students' => $students, 'auditions' => $auditions]); } public function store() { if(! Auth::user()->is_admin) abort(403); request()->validate([ 'student_id' => ['required', 'exists:students,id'], 'audition_id' => ['required', 'exists:auditions,id'], ]); Entry::create([ 'student_id' => request('student_id'), 'audition_id' => request('audition_id'), ]); return redirect('/admin/entries'); } public function edit(Entry $entry) { if(! Auth::user()->is_admin) abort(403); $students = Student::with('school')->orderBy('last_name')->orderBy('first_name')->get(); $auditions = Audition::orderBy('name')->get(); return view('admin.entries.edit', ['entry' => $entry, 'students' => $students, 'auditions' => $auditions]); } public function update(Entry $entry) { if(! Auth::user()->is_admin) abort(403); request()->validate([ 'student_id' => ['required', 'exists:students,id'], 'audition_id' => ['required', 'exists:auditions,id'], ]); $entry->update([ 'student_id' => request('student_id'), 'audition_id' => request('audition_id'), ]); return redirect('/admin/entries'); } }