/** * Display the specified resource. * * @param int $id * @return Response */ public function show(Category $category, Request $request) { $deleted_device = Device::onlyTrashed()->where('category_id', $category->id)->get(); $devices = Device::with(['information.field', 'owner', 'status'])->where('category_id', $category->id)->latest('updated_at'); if ($request->has('filter')) { $device_filter = $devices->where('name', 'LIKE', '%' . $request->get('filter') . '%')->get(); if (count($device_filter) == 0) { $first_name_filter = Device::whereHas('owner', function ($q) use($request) { $q->where('firstName', 'LIKE', '%' . $request->get('filter') . '%'); })->get(); if (count($first_name_filter) == 0) { $devices = Device::whereHas('owner', function ($q) use($request) { $q->where('lastName', 'LIKE', '%' . $request->get('filter') . '%'); }); } else { $devices = Device::whereHas('owner', function ($q) use($request) { $q->where('firstName', 'LIKE', '%' . $request->get('filter') . '%'); }); } } else { $devices = $devices->where('name', 'LIKE', '%' . $request->get('filter') . '%'); } } $devices = $devices->paginate(25); //$devices = $devices->where('name', 'LIKE', '%'.$request->get('filter').'%')->paginate(25); $devices->setPath($category->slug); return view('category.show', compact('category', 'deleted_device', 'devices')); }