@props(['event']) @php use App\Enums\ParticipantStatus; use App\Enums\CateringStatus; use App\Enums\EventType; $isMeeting = $event->type === EventType::Meeting; $yesCount = $event->participants->where('status', ParticipantStatus::Yes)->count(); $noCount = $event->participants->where('status', ParticipantStatus::No)->count(); $openCount = $event->participants->where('status', ParticipantStatus::Unknown)->count(); // withCount-Attribute nutzen wenn vorhanden (Index-Views), sonst Collection filtern (Show-View) $hasCatering = $event->type->hasCatering(); $hasTimekeepers = $event->type->hasTimekeepers(); $cateringYes = $hasCatering ? ($event->caterings_yes_count ?? $event->caterings->where('status', CateringStatus::Yes)->count()) : 0; $timekeeperYes = $hasTimekeepers ? ($event->timekeepers_yes_count ?? $event->timekeepers->where('status', CateringStatus::Yes)->count()) : 0; // Individual minimum status if ($event->min_players !== null) { $playersMet = $yesCount >= $event->min_players; } else { $playersMet = null; } $cateringMet = ($hasCatering && $event->min_catering !== null) ? $cateringYes >= $event->min_catering : null; $timekeepersMet = ($hasTimekeepers && $event->min_timekeepers !== null) ? $timekeeperYes >= $event->min_timekeepers : null; // Box size classes $boxClass = 'inline-flex items-center justify-center w-9 h-9 rounded text-sm font-bold'; $participantsLabel = $isMeeting ? __('admin.nav_users') : __('admin.nav_players'); @endphp