@vite(['resources/css/app.css', 'resources/js/app.js']) {{-- Cookie-Consent Banner --}} @if(\App\Models\Setting::get('cookie_consent') && !Cookie::has('cookie_consent')) @endif @php $legalSlugs = ['impressum','datenschutz','agb','widerrufsbelehrung']; $navPages = \App\Models\Page::where('published', true) ->where('show_in_nav', true) ->orderBy('nav_sort') ->orderBy('title') ->get(); @endphp {{-- Header: Logo-Leiste --}}
{{-- Logo: Bild (wenn hinterlegt) oder Shop-Name als Text --}} @php $logo = \App\Models\Setting::get('shop_logo'); @endphp @if($logo) {{ \App\Models\Setting::get('shop_name', 'Shop') }} @else {{ \App\Models\Setting::get('shop_name', 'Shop') }} @endif {{-- Haupt-Navigation rechts --}}
{{-- Kategorien-Navigation --}} @php $navCats = \App\Models\Category::whereNull('parent_id')->where('active', true)->orderBy('sort_order')->get(); @endphp @if($navCats->count())
@foreach($navCats as $cat) {{ $cat->name }} @endforeach
@endif
{{-- Flash Messages --}}
@if(session('success'))
{{ session('success') }}
@endif @if(session('error'))
{{ session('error') }}
@endif
@yield('content')
{{-- Footer --}} @php $footerPages = \App\Models\Page::where('published', true) ->where('type', 'static') ->where('show_in_footer', true) ->whereNotIn('slug', $legalSlugs) ->orderBy('title') ->get(); $legalPages = \App\Models\Page::where('published', true) ->where('type', 'static') ->whereIn('slug', $legalSlugs) ->get() ->sortBy(fn($p) => array_search($p->slug, $legalSlugs)) ->values(); $hasBlog = \App\Models\Page::where('type','blog')->where('published', true)->exists(); $hasFaq = \App\Models\Faq::exists(); @endphp @stack('scripts')