public function sortBy() { $newestAuction = Auction::where('FK_status_id', '=', 1)->orWhere('FK_status_id', '=', 3)->orderBy('created_at', 'desc')->first(); switch (Input::get('type')) { case 'soonest': $auctions = Auction::orderBy('enddate', 'asc')->paginate(9); break; case 'latest': $auctions = Auction::orderBy('enddate', 'desc')->paginate(9); break; case 'new': $auctions = Auction::orderBy('created_at', 'desc')->paginate(9); break; case 'popular': $auctions = Auction::leftJoin('bidders', 'auctions.id', '=', 'bidders.FK_auction_id')->selectRaw('auctions.*, count(bidders.FK_auction_id) AS `count`')->groupBy('auctions.id')->orderBy('count', 'DESC')->paginate(9); break; } return view('overview')->with('newestAuction', $newestAuction)->with('auctions', $auctions); }