feat: show only brands with min 1 product - #91
This commit is contained in:
parent
b23bbf8334
commit
6e7bbe0681
2 changed files with 8 additions and 2 deletions
|
|
@ -88,12 +88,18 @@ class ProductsController extends Controller
|
|||
/** @var \Illuminate\Database\Eloquent\Collection<\App\Models\Product> */
|
||||
$products = $productsQuery->orderBy('order', 'ASC')->paginate(6);
|
||||
|
||||
$brands = \collect(\App\Enums\ProductBrand::toArray())->filter(
|
||||
function (\App\Enums\ProductBrand $case) {
|
||||
return Product::query()->pluck('brand')->contains($case->value);
|
||||
}
|
||||
)->values();
|
||||
|
||||
if ($request->ajax()) {
|
||||
return \response()->json([ProductResource::collection($products), $products->total()]);
|
||||
} else {
|
||||
$ranges = Range::all();
|
||||
$tags = Tag::where('status', true)->get();
|
||||
return view('ranges', compact('products', 'ranges', 'tags', 'sessionFilter', 'filtersMenuIsOpen'));
|
||||
return view('ranges', compact('products', 'ranges', 'tags', 'sessionFilter', 'filtersMenuIsOpen', 'brands'));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@
|
|||
$dataComponent = [
|
||||
'hasPromotion' => request()->promotion ? true : false,
|
||||
'ranges' => $ranges,
|
||||
'brands' => \App\Enums\ProductBrand::toArray(),
|
||||
'brands' => $brands,
|
||||
'tags' => $tags,
|
||||
'products' => \App\Http\Resources\ProductResource::collection($products),
|
||||
'productsResults' => $products->perPage(),
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue