@extends('layouts.app') @section('title', $collectionConfig['title']) @section('content') @php // Base-aware URL builder: preserves every active filter except overrides. $filterBase = '/' . $collectionConfig['key']; $shopUrl = function (array $overrides = []) use ($filterBase) { $params = array_filter([ 'brand' => request()->query('brand'), 'cat' => request()->query('cat'), 'tag' => request()->query('tag'), 'mfr' => request()->query('mfr'), 'min_price' => request()->query('min_price'), 'max_price' => request()->query('max_price'), 'stock' => request()->query('stock'), 'dropship' => request()->query('dropship'), ], fn ($v) => $v !== null && $v !== ''); foreach ($overrides as $key => $value) { if ($value === null || $value === '') { unset($params[$key]); } else { $params[$key] = $value; } } return empty($params) ? url($filterBase) : url($filterBase . '?' . http_build_query($params)); }; $facets = $catalogue['facets']; $paginator = $catalogue['paginator']; @endphp

{{ $collectionConfig['heading'] }}

{{ $collectionConfig['tagline'] }}

@include('shop.partials.filter-panel')

@if($catalogue['active']['cat_name']) {{ $catalogue['active']['cat_name'] }} @elseif($activeBrandKey) {{ $activeBrandKey === 'magic' ? 'Magic City' : 'IZONE Africa' }} @else All Products @endif ยท {{ $catalogue['total'] }} {{ Str::plural('product', $catalogue['total']) }}

@forelse($catalogue['products'] as $product) @empty
๐Ÿ”
No products match these filters
Try widening the price range or clearing a filter.
@endforelse
@if($paginator && $paginator->lastPage() > 1) @endif
@endsection