with('appUser'); if ($request->search) { $this->searchQuery( $query, $request->search, null, 'firstname', 'lastname', 'email', ); } $searchFields = \implode(', ', [ trans('validation.attributes.last_name'), trans('validation.attributes.email'), trans('validation.attributes.phone'), ]); /** Sort columns with a query */ $this->sortQuery($query); if ($request->user) { $query->whereHas('appUser', function (Builder $q) use ($request) { $q->where('id', $request->user); }); } $contactModelList = $this->paginate($query); $appUsers = AppUser::query()->select(['id', 'lastname', 'firstname'])->orderBy('lastname')->get(); return view('bo.pages.contacts.index', compact('contactModelList', 'searchFields', 'appUsers')); } /** * Display the specified resource. * * @param \App\Models\Contact $contact * @return \Illuminate\View\View */ public function show(Contact $contact): \Illuminate\View\View { $contact->load('appUser.directories'); $fomularies = Formulary::all()->keyBy('name'); return view('bo.pages.contacts.show', [ 'contactModel' => $contact, 'fomularies' => $fomularies ]); } }