public function getTutorSearch(Request $request) { $defaultsubjects = DefaultSubject::OrderBy('subject')->get(); $sort = 'N'; if ($request->has('tutorsearch')) { if ($request->session()->has('tutorsearch')) { $request->session()->forget('tutorsearch'); } $request->session()->put('tutorsearch', $request->input('tutorsearch')); $input = $request->input('tutorsearch'); if ($request->session()->has('tutorcount')) { $request->session()->forget('tutorcount'); } $t = User::with('tutorinfo')->with('subjects')->select('users.*')->where(['type' => 'tutor'])->leftJoin('subjects', function ($join) { $join->on('subjects.userid', '=', 'users.id'); })->whereIn('subject', $input)->orderBy('subjects.subject', 'ASC')->groupBy('users.id')->get(); $counttutor = count($t); $request->session()->put('tutorcount', $counttutor); } else { $counttutor = $request->session()->get('tutorcount'); $input = $request->session()->get('tutorsearch'); } $tutors = User::with('tutorinfo')->with('subjects')->select('users.*')->where(['type' => 'tutor'])->leftJoin('subjects', function ($join) { $join->on('subjects.userid', '=', 'users.id'); })->whereIn('subject', $input)->groupBy('users.id')->paginate(10); $tutors->setpath(URL::route('tutorsearch')); return view('project.main.findtutor')->with('title', 'Find Private Tutor | ' . $this->sitename)->with('tutors', $tutors)->with('tutorcount', $counttutor)->with('sort', $sort)->withsubjects($input)->with('defaultsubjects', $defaultsubjects); }