presseportale/resources/views/components/web/site-footer.blade.php
Kevin Adametz 253141c6dc Frontend: Editorial-Relaunch der öffentlichen Strecke + Ausgaben-Routing
Öffentliche Seiten auf gemeinsames Editorial-Design (x-web.site-header/-footer,
Design-Tokens) und Ausgaben-Präfix /{edition}/ (de|en) umgestellt.

- Routing: neue Middleware SetEdition (Locale + URL::defaults), /{edition}-Gruppe
  in routes/web.php, Root-Redirect auf /de, 301 für Legacy-.html-URLs,
  Baseline-Default in AppServiceProvider.
- Neue URL-Schemata: /{edition}/press-release/{slug}, /{edition}/category/{slug}.
- Ausgabe = Sprache: DE/EN-Umschalter (Region/CH/AT entfernt); EditorialClock
  und Livewire-Komponenten sprachdynamisch.
- Detail-, Kategorie- und Veröffentlichen-Seite mit echten Daten neu aufgebaut.
- Suche aktiviert: Volt-Komponente livewire/web/search (Titel/Text/Keywords +
  Firma + Rubrik, Filter, Sortierung, Pagination, URL-Parameter q/category/sort).
- Rubriken-Navigation statt Übersichtsseite: Helper CategoryNavigation;
  web/kategorien.blade.php + Route entfernt (Legacy-301).
- Tests: Edition-Routing, Kategorie-Seite/-Navigation, Detail, Veröffentlichen,
  Suche, EditorialClock. Doku in "Echte öffentliche Unterseiten.md" aktualisiert.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-16 16:39:28 +00:00

83 lines
4.7 KiB
PHP

@props([
'brand' => null,
])
@php
$themeKey = config('app.theme');
$brand = $brand ?? config('domains.domains.'.$themeKey.'.brand', [
'name' => 'businessportal',
'accent' => '24',
'tagline_short' => 'Pressemitteilungen · DACH',
'tagline_long' => 'Veröffentlichungs-Portal für redaktionell geprüfte Pressemitteilungen aus Deutschland, Österreich und der Schweiz.',
'footer_legal' => '© :year businessportal24 · Alle Rechte vorbehalten',
'about_label' => 'Über businessportal24',
]);
$brandName = $brand['name'] ?? 'businessportal';
$brandAccent = $brand['accent'] ?? '';
$brandTagline = $brand['tagline_short'] ?? 'Pressemitteilungen · DACH';
$brandTaglineLong = $brand['tagline_long'] ?? 'Pressemitteilungen aus dem DACH-Raum.';
$aboutLabel = $brand['about_label'] ?? ('Über '.$brandName.$brandAccent);
$legal = str_replace(':year', (string) now()->format('Y'), $brand['footer_legal'] ?? '© :year · Alle Rechte vorbehalten');
@endphp
<footer class="mt-16 bg-topbar-grad text-ink-on-dark">
<div class="max-w-layout mx-auto px-8 py-12 grid gap-10 grid-cols-1 md:grid-cols-2 lg:grid-cols-[1.4fr_1fr_1fr_1fr]">
<div>
<a href="{{ route('web.home') }}" class="block cursor-pointer group" aria-label="{{ $brandName }}{{ $brandAccent }} Startseite">
<div class="text-[24px] font-semibold leading-none tracking-[-0.5px]">
<x-web.brand-mark :brand="$themeKey" variant="on-dark" />
</div>
<div class="eyebrow mt-2 text-[9.5px] tracking-[0.18em] text-ink-on-dark-muted">
{{ $brandTagline }}
</div>
</a>
<p class="text-[12.5px] text-white/55 leading-[1.55] mt-4 max-w-[320px]">
{{ $brandTaglineLong }}
</p>
</div>
<div>
<div class="eyebrow mb-3.5">Rubriken</div>
<ul class="space-y-2 text-[13px] text-white/75 list-none p-0 m-0">
@foreach (\App\Support\CategoryNavigation::items(5) as $footerCategory)
<li><a href="{{ $footerCategory['href'] }}" class="cursor-pointer hover:text-white transition-colors">{{ $footerCategory['label'] }}</a></li>
@endforeach
<li><a href="{{ route('newsrooms') }}" class="cursor-pointer hover:text-white transition-colors">Newsrooms</a></li>
</ul>
</div>
<div>
<div class="eyebrow mb-3.5">Für Unternehmen</div>
<ul class="space-y-2 text-[13px] text-white/75 list-none p-0 m-0">
<li><a href="{{ route('veroeffentlichen') }}" class="cursor-pointer hover:text-white transition-colors">Veröffentlichen</a></li>
<li><a href="{{ route('preise') }}" class="cursor-pointer hover:text-white transition-colors">Tarife &amp; Pakete</a></li>
<li><a href="#" class="cursor-pointer hover:text-white transition-colors">Verifizierter Newsroom</a></li>
<li><a href="{{ route('api') }}" class="cursor-pointer hover:text-white transition-colors">API &amp; RSS</a></li>
<li><a href="#" class="cursor-pointer hover:text-white transition-colors">Mediendaten</a></li>
</ul>
</div>
<div>
<div class="eyebrow mb-3.5">Unternehmen</div>
<ul class="space-y-2 text-[13px] text-white/75 list-none p-0 m-0">
<li><a href="{{ route('ueber-uns') }}" class="cursor-pointer hover:text-white transition-colors">{{ $aboutLabel }}</a></li>
<li><a href="#" class="cursor-pointer hover:text-white transition-colors">Redaktion</a></li>
<li><a href="{{ route('kontakt') }}" class="cursor-pointer hover:text-white transition-colors">Kontakt</a></li>
<li><a href="{{ route('impressum') }}" class="cursor-pointer hover:text-white transition-colors">Impressum</a></li>
<li><a href="{{ route('datenschutz') }}" class="cursor-pointer hover:text-white transition-colors">Datenschutz</a></li>
</ul>
</div>
</div>
<div class="border-t border-white/10">
<div class="max-w-layout mx-auto px-8 py-5 flex items-center justify-between gap-4 text-[11.5px] text-white/50 flex-wrap">
<span>{{ $legal }}</span>
<span class="flex items-center gap-4 flex-wrap">
<a href="{{ route('agb') }}" class="cursor-pointer hover:text-white transition-colors">AGB</a>
<a href="#" class="cursor-pointer hover:text-white transition-colors">Cookie-Einstellungen</a>
<a href="{{ route('datenschutz') }}" class="cursor-pointer hover:text-white transition-colors">DSGVO</a>
</span>
</div>
</div>
</footer>