Book a session

Sessions need {{ $this->room?->lead_time_hours ?? 24 }} hours notice.

@if ($error)
{{ $error }}
@endif {{-- Room --}}

Room

@foreach ($this->rooms as $room) @endforeach
{{-- Experiences --}} @if ($this->experiences->isNotEmpty())

Or an experience

@foreach ($this->experiences as $experience) @endforeach
@endif {{-- Session type: only where an engineer is actually on offer --}} @if ($this->room?->takes_engineer && ! $experienceId && ! $this->room->isDayRate())

Session type

@foreach ([ \App\Enums\SessionType::WithEngineer, \App\Enums\SessionType::WithoutEngineer, ] as $type) @endforeach
@endif {{-- Add-ons --}} @if ($this->roomAddons->isNotEmpty() && ! $experienceId)

Extras

@foreach ($this->roomAddons as $addon) @endforeach
@endif {{-- Package --}} @if ($this->availablePackage)
@endif {{-- Date --}}

Date

{{-- Times --}}

{{ $this->room?->isDayRate() && ! $experienceId ? 'Start of day' : 'Start time' }}

@php $bookable = collect($this->grid)->filter(fn ($slot) => $slot->isAvailable()); @endphp @if ($bookable->isEmpty())

Nothing free in {{ $this->room?->name }} on this date. Try another day.

@else
@foreach ($this->grid as $slot) @endforeach

Struck-through times are unavailable. Hover for the reason.

@endif
{{-- Duration --}} @if ($startsAt && ! $this->room?->isDayRate() && ! $experienceId)

How long — minimum {{ $this->room?->min_hours }} hours

{{ rtrim(rtrim(number_format($this->hours, 1), '0'), '.') }} hours
@endif {{-- Guests --}} @if ($experienceId && $this->experience)

Guests

{{ $this->experience->included_guests }} included, then £{{ number_format((float) $this->experience->extra_guest_price, 0) }} each, up to {{ $this->experience->max_guests }}.

@endif {{-- Preferred engineer --}} @if ($startsAt && $sessionType === \App\Enums\SessionType::WithEngineer->value && $this->room?->takes_engineer)

Preferred engineer — optional

@foreach ($this->engineers as $engineer) @endforeach

We will do our best. Your slot is confirmed either way.

@endif {{-- Summary --}} @if ($startsAt && $this->selectedSlot)
{{ $this->selectedSlot->startsAt->setTimezone(config('studio.timezone'))->format('l j F') }}, {{ $this->selectedSlot->label() }} – {{ $this->endsAtLabel }}
{{ $this->room?->name }} @if ($this->experience) · {{ $this->experience->name }} @endif
@if ($this->quote?->paidByPackage && $this->quote->isFree())
On your package
@else
£{{ $this->quote?->total }}
@endif

Cancel 48 hours or more ahead for a full refund. Under 48 hours, 50%.

@endif