public function index()
 {
     // most popular bids top 3
     $arts = Auction::select(DB::raw('auctions.*, count(*) as `totalbids`'))->join('bids', 'auctions.id', '=', 'bids.auction_id')->groupBy('auction_id')->orderBy('totalbids', 'desc')->take(3)->get();
     // newest  auctions for in carousel
     $carousels = Auction::orderBy('published', 'desc')->take(5)->get();
     return view('welcome', compact('arts', 'carousels'));
 }
 public function overzicht(Request $request)
 {
     //        sort data
     if ($request->session()->has('order')) {
         $order = $request->session()->get('order');
         $orderby = $order['by'];
         $orderdirection = $order['direction'];
     } else {
         $orderby = 'end_date';
         $orderdirection = 'asc';
     }
     if ($orderby == 'popular') {
         if ($request->session()->has('filter')) {
             $arts = Auction::select(DB::raw('auctions.*, count(*) as `totalbids`'))->join('bids', 'auctions.id', '=', 'bids.auction_id')->groupBy('auction_id')->orderBy('totalbids', 'desc')->where('active', '=', true)->where('end_date', '>', Carbon::now())->paginate(8);
         } else {
             /* no filter */
             $arts = Auction::select(DB::raw('auctions.*, count(*) as `totalbids`'))->join('bids', 'auctions.id', '=', 'bids.auction_id')->groupBy('auction_id')->orderBy('totalbids', 'desc')->where('active', '=', true)->where('end_date', '>', Carbon::now())->paginate(8);
         }
     } else {
         if ($request->session()->has('filter')) {
             $filter = $request->session()->get('filter');
             $query = Auction::query();
             $query->orderBy($orderby, $orderdirection);
             $query->where('end_date', '>', Carbon::now());
             $query->where('active', '=', true);
             $query->paginate(8);
             if (isset($filter['price']['on'])) {
                 if ($filter['price']['on'] == true) {
                     $query->whereBetween('price_buy', array($filter['price']['bottom'], $filter['price']['top']));
                 }
             }
             if (isset($filter['era']['on'])) {
                 if ($filter['era']['on'] == true) {
                     $query->whereBetween('year', array($filter['era']['bottom'], $filter['era']['top']));
                 }
             }
             if (isset($filter['style']['on'])) {
                 if ($filter['style'] == true) {
                     $query->where('auctionstyle_id', '=', $filter['style']['bottom']);
                 }
             }
             $arts = $query->get();
         } else {
             /* no filter */
             $arts = Auction::orderBy($orderby, $orderdirection)->where('end_date', '>', Carbon::now())->where('active', '=', true)->paginate(8);
         }
     }
     // get styles
     $styles = Auctionstyle::all();
     return view('overzicht', compact('arts', 'styles'));
 }
 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);
 }
 /**
  * Display a listing of the resource.
  *
  * @return \Illuminate\Http\Response
  */
 public function index()
 {
     $auctions = Auction::orderBy('bid_amount', 'DESC')->take(3)->get();
     return view('home', compact('auctions'));
 }