@extends('layouts.admin') @section('title', $registration->reference) @section('heading', $registration->full_name) @section('subheading', $registration->reference.' · '.$category->name) @php $tz = config('event.timezone'); $fmt = fn ($date, string $format = 'j M Y, H:i') => $date ? $date->timezone($tz)->format($format) : '—'; $interestLabels = (array) config('event.registration.interests'); $docLabels = (array) config('event.registration.document_types'); $badge = $registration->badge; $badgeActive = $badge && $badge->isUsable(); $isApproved = $registration->isApproved(); $canReview = $canDecide && $registration->status->isReviewable(); @endphp @section('content')
← All registrations @if ($registration->waitlist_position && $registration->status->value === 'waitlisted') Waitlist position {{ $registration->waitlist_position }} @endif
{{-- Profile --}}
@if ($registration->photo_path) Photo of {{ $registration->full_name }} @else {{ \Illuminate\Support\Str::upper(\Illuminate\Support\Str::substr($registration->full_name, 0, 1)) }} @endif

{{ $registration->full_name }}

{{ $category->name }}@if ($registration->company_role) · {{ $registration->company_role }}@endif

@if ($registration->photo_path) Open photo @endif
@foreach ([ 'E-mail' => $registration->email, 'Phone' => $registration->phone, 'Date of birth' => $fmt($registration->date_of_birth, 'j M Y'), 'Gender' => $registration->gender ? ucwords(str_replace('_', ' ', $registration->gender)) : '—', 'Province' => $registration->province ?: '—', 'District' => $registration->district ?: '—', 'Sector / ward' => $registration->sector ?: '—', 'Media outlet' => $registration->media_outlet ?: null, ] as $label => $value) @continue($value === null)
{{ $label }}
{{ $value }}
@endforeach
National ID @unless ($canSeeSensitive)(masked)@endunless
{{ $nationalId ?: '—' }}
@if ($canSeeSensitive)
Passport
{{ $passportNumber ?: '—' }}
@endif
Phone verified
{{ $registration->phone_verified_at ? $fmt($registration->phone_verified_at) : 'No' }}
E-mail verified
{{ $registration->email_verified_at ? $fmt($registration->email_verified_at) : 'No' }}
Communications consent
{{ $registration->consent_communications ? 'Yes' : 'No' }}
Submitted
{{ $fmt($registration->submitted_at ?? $registration->created_at) }}
@if (! empty($registration->interests))

Interests

@foreach ($registration->interests as $interest) {{ $interestLabels[$interest] ?? ucwords(str_replace('_', ' ', $interest)) }} @endforeach
@endif @if ($registration->accessibility_needs)

Accessibility needs

{{ $registration->accessibility_needs }}

@endif
{{-- Organisation --}} @if ($registration->organisation || $registration->booth_request || $registration->products_services || $registration->sponsorship_interest) @php($org = $registration->organisation)

Organisation

@if ($org)
Name
{{ $org->name }}
Sector
{{ $org->sector ?: '—' }}
E-mail
{{ $org->email ?: '—' }}
Phone
{{ $org->phone ?: '—' }}
Registration no.
{{ $org->registration_number ?: '—' }}
@if ($canSeeSensitive)
TIN
{{ $org->tin ?: '—' }}
@endif
Website
@if ($org->website){{ $org->website }}@else — @endif
@endif @foreach (['booth_request' => 'Booth request', 'products_services' => 'Products & services', 'sponsorship_interest' => 'Sponsorship interest'] as $field => $label) @if ($registration->{$field})

{{ $label }}

{{ $registration->{$field} }}

@endif @endforeach
@endif {{-- Documents --}} @if ($registration->documents->isNotEmpty())

Documents

    @foreach ($registration->documents as $document)
  • {{ $docLabels[$document->type] ?? ucwords(str_replace('_', ' ', $document->type)) }}

    {{ $document->original_name }} · {{ number_format($document->size / 1024) }} KB

    @if (auth()->user()->isSuperAdmin() || auth()->user()->hasAnyRole([\App\Enums\UserRole::EventManager, \App\Enums\UserRole::RegistrationOfficer, \App\Enums\UserRole::Auditor])) Open @endif
  • @endforeach
@endif {{-- Check-ins --}}

Check-ins

@if ($checkins->isEmpty())

Not checked in on any day yet.

@else
    @foreach ($checkins as $checkin)
  • {{ $checkin->event_day->format('D j M Y') }} @if ($checkin->is_duplicate)duplicate scan@endif @if ($checkin->override_by)override@endif

    By {{ $checkin->staff?->name ?? 'system' }}@if ($checkin->gate) · gate {{ $checkin->gate }}@endif @if ($checkin->override_reason) · “{{ $checkin->override_reason }}”@endif

    in {{ $fmt($checkin->checked_in_at, 'H:i') }}@if ($checkin->checked_out_at) · out {{ $fmt($checkin->checked_out_at, 'H:i') }}@endif

  • @endforeach
@endif
{{-- Notifications --}}

Notification history

@if ($notifications->isEmpty())

No messages sent yet.

@else
    @foreach ($notifications as $log)
  • {{ $log->channel->label() }} · {{ ucwords(str_replace('_', ' ', $log->template)) }}

    {{ $log->recipient }} · {{ $fmt($log->sent_at ?? $log->created_at) }}@if ($log->attempts > 1) · {{ $log->attempts }} attempts @endif

    @if ($log->last_error)

    {{ \Illuminate\Support\Str::limit($log->last_error, 160) }}

    @endif
  • @endforeach
@endif
{{-- Sidebar: decisions + badge --}}
@endsection