Event-Liste: Termine nach Monaten gruppiert mit Überschriften
Termine werden jetzt unter Monats-Headern (z.B. "März 2026", "April 2026") gruppiert dargestellt. Die Event-Karten bleiben unverändert, werden aber innerhalb der Monatsblöcke organisiert. Monatsnamen sind lokalisiert. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -37,19 +37,29 @@
|
||||
</div>
|
||||
</form>
|
||||
|
||||
{{-- Event-Liste --}}
|
||||
{{-- Event-Liste nach Monaten gruppiert --}}
|
||||
@if ($events->isEmpty())
|
||||
<div class="bg-white rounded-lg shadow p-6 text-center text-gray-500">
|
||||
{{ __('events.no_events') }}
|
||||
</div>
|
||||
@else
|
||||
<div class="space-y-3">
|
||||
@php $currentMonth = null; @endphp
|
||||
@foreach ($events as $event)
|
||||
@php
|
||||
$eventMonth = $event->start_at->translatedFormat('F Y');
|
||||
$minStatus = $event->minimumsStatus();
|
||||
$bgClass = match($minStatus) { true => 'bg-green-100', false => 'bg-red-100', default => 'bg-white' };
|
||||
@endphp
|
||||
<a href="{{ route('events.show', $event) }}" class="block {{ $bgClass }} rounded-lg shadow p-4 hover:shadow-md transition-shadow">
|
||||
|
||||
{{-- Monats-Header --}}
|
||||
@if ($eventMonth !== $currentMonth)
|
||||
@php $currentMonth = $eventMonth; @endphp
|
||||
<div class="{{ !$loop->first ? 'mt-6' : '' }} mb-3">
|
||||
<h2 class="text-lg font-bold text-gray-800 border-b-2 border-gray-200 pb-1">{{ $eventMonth }}</h2>
|
||||
</div>
|
||||
@endif
|
||||
|
||||
<a href="{{ route('events.show', $event) }}" class="block {{ $bgClass }} rounded-lg shadow p-4 mb-3 hover:shadow-md transition-shadow">
|
||||
<div class="flex flex-col sm:flex-row sm:items-center gap-3">
|
||||
<div class="flex-1 min-w-0">
|
||||
<div class="flex items-center gap-2 mb-1 flex-wrap">
|
||||
@@ -80,7 +90,6 @@
|
||||
</div>
|
||||
</a>
|
||||
@endforeach
|
||||
</div>
|
||||
|
||||
<div class="mt-6">
|
||||
{{ $events->links() }}
|
||||
|
||||
Reference in New Issue
Block a user