/** * Display a listing of the resource. * * @return Response */ public function getIndex() { if (Request::segment(2) == 'search') { $input = Session::get('search') && !Input::get('search_category') ? Session::get('search') : Input::only(array('search_category', 'search_keyword')); switch ($input['search_category']) { case '0': return Redirect::to('gateway'); break; case 'owner': $gateways = Gateway::whereHas('user', function ($q) { $q->where('username', 'LIKE', '%' . Input::get('search_keyword') . '%'); })->get(); break; default: if (Auth::user()->status == 2) { $gateways = Gateway::where($input['search_category'], 'LIKE', '%' . $input['search_keyword'] . '%')->get(); } else { $gateways = Gateway::where('user_id', Auth::user()->id)->where($input['search_category'], 'LIKE', '%' . $input['search_keyword'] . '%')->get(); } break; } Session::set('search', $input); } else { Session::remove('search'); $input = array('search_category' => '', 'search_keyword' => ''); $gateways = Auth::user()->status == 2 ? Gateway::all() : Gateway::where('user_id', Auth::user()->id)->get(); } return View::make('gateway.index')->with('gateways', $gateways)->with('selected', $input); }