@php $activePlace = $this->getActivePlace(); $placeOptions = $this->getAccessiblePlaceOptions(); $quickLinks = $this->getV2QuickNavigationLinks(); $placeInfoUrl = $this->getPlaceInformationUrl(); $contextSelector = $this->getShellContextSelector(); @endphp {{-- Reusable Alpine combobox macro rendered as an inline component --}} @php /** * Outputs a searchable combobox that: * - shows the currently selected label * - opens a filterable dropdown on click * - emits a Livewire $set(model, value) when an option is chosen * * Expects: $cbId (unique string), $cbLabel (heading), $cbModel (wire prop name), * $cbSelected (current value), $cbOptions (assoc array value=>label), * $cbEmpty (empty placeholder) */ @endphp
{{-- Left: title + context chips --}}
Champions Spirit · Admin V2

{{ $pageHeading }}

{{ $pageDescription }}

@if ($activePlace) Place: {{ $activePlace->name }} @else No place assigned @endif
Date: {{ $activeDate }}
{{-- Right: controls --}}
{{-- Place combobox --}} @include('filament.v2.partials.shell-combobox', [ 'cbId' => 'place-selector', 'cbLabel' => 'Place', 'cbModel' => 'activePlacePublicId', 'cbSelected' => $activePlacePublicId, 'cbOptions' => $placeOptions, 'cbEmpty' => 'No place available', ]) {{-- Date (plain input — no search needed) --}} {{-- Optional third context selector (user / family / coach / employee) --}} @if ($contextSelector) @include('filament.v2.partials.shell-combobox', [ 'cbId' => 'context-selector', 'cbLabel' => $contextSelector['label'], 'cbModel' => $contextSelector['model'], 'cbSelected' => $this->{$contextSelector['model']} ?? null, 'cbOptions' => $contextSelector['options'], 'cbEmpty' => $contextSelector['empty_label'] ?? 'No record available', ]) @endif {{-- Place info link --}}
@if ($placeInfoUrl) Open Current Place Information @else
Select a place to view its information.
@endif