input('filterType')) || !empty($request->input('minimumPrice')) || !empty($request->input('maximumPrice'))) { $this->filterType = $request->filterType; $this->categoryFiltr = $request->categoryFilter; $this->minimumPrice = $request->minimumPrice; $this->maximumPrice = $request->maximumPrice; $valueType = $request->filterType; $valueMinimumPrice = $request->minimumPrice; $valueMaximumPrice = $request->maximumPrice; } $query = Product::where('is_status', GlobalEnum::isSiteActive); if (!empty($this->filterType)) { $query->where('is_type', $this->filterType); } if (!empty($this->minimumPrice) || !empty($this->maximumPrice)) { if($this->maximumPrice <= 0) { $maximumPrice = 999999999; } else { $maximumPrice = $this->maximumPrice; } $query->whereBetween('is_price', [$this->minimumPrice, $maximumPrice]); } if(!empty($this->minimumPrice)) { $query->where('is_price', '<=', $this->minimumPrice); } if (!empty($this->searchFilter)) { $query->where('name', 'like', '%' . $this->searchFilter . '%'); } $sites = $query->paginate($this->perPage)->appends([ 'filterType' => $this->filterType, 'minimumPrice' => $this->minimumPrice, 'maximumPrice' => $this->maximumPrice, ]); $elements = $sites->links()->elements; $searchCount = $sites->total(); return view('livewire.modules.user.site', compact('sites', 'elements', 'searchCount', 'valueType', 'valueMinimumPrice', 'valueMaximumPrice') ); } public function previousPage() { if ($this->currentPage > 1) { $this->currentPage--; } } public function nextPage() { $this->currentPage++; } public function goToPage($page) { return redirect()->to(site_url('user', 'product/p') . '/' . $page); } }