public function index(Request $request)
	{
		//I need to come back in here and check how I can sync the paginated products
		//with the filters. The issue here is paginated does not contain the whole
		//result, therefore, the filters count are worng.

		$products = $this->products->filter(
			$request->all()
		);

		// this line is required in order for the store to show
		// the counter on the side bar filters.
		$allProducts = $products->get();

		if (Auth::check()) {
			Auth::user()->updatePreferences('my_searches', $allProducts);
		}

		return view('products.index', [
			'suggestions' => Suggestions\Suggest::shakeFor($allProducts),
			'refine' => Parsers\Breadcrumb::parse($request->all()),
			'filters' => Parsers\Filters::parse($allProducts),
			'products' => $products->paginate(28),
			'panel' => $this->panel,
		]);
	}