@if($canManageBooking)

Patient online booking

Publish dated consultation sessions, then assign each clinician to a published shift covering those times. Slots have capacity for one patient and are hidden during approved leave or conflicting appointments. Times: {{ config('app.timezone') }}.

@if($canManageBookingPolicy)
@csrf
@else

Self-booking is {{ $bookingPolicy->enabled?'enabled':'disabled' }}. Organisation managers control booking rules.

@endif
Publish a consultation session
@csrf
@forelse($bookingSessions as $s) @empty@endforelse
Clinician / facilitySessionType / durationStatusAction
{{ $s->clinician_name }} · {{ $s->facility_name }}{{ $s->starts_at }} – {{ $s->ends_at }}{{ str_replace('_',' ',$s->modality) }} · {{ $s->slot_minutes }} min{{ $s->status }} @if($s->status==='published')
@csrf
@endif
No upcoming booking sessions.

Closing a session stops new bookings. Existing appointments stay scheduled and can be managed by reception. Email confirmations and reminders use the configured patient notification scheduler.

@endif