role == 'admin') { return $next($request); } $exam = Exam::find($request->exam_id); if ($user->role == 'instructor' && $user->instructor_id == $exam->instructor_id) { return $next($request); } $enrollment = ExamEnrollment::where('user_id', $user->id) ->where('exam_id', $exam->id) ->first(); if ($enrollment) { return $next($request); } return back()->with('error', 'You are not enrolled in this exam'); } }