@extends('layouts.sidebar') @section('title', 'Nomadic - Partner Application #'.$application->id) @section('content')

Partner Application #{{ $application->id }}

Back to List
@if(session('success')) @endif @if(session('error')) @endif
{{-- Left column: application details --}}
{{-- Status & Progress --}}
Status: @switch($application->status) @case('pending') Pending @break @case('under_review') Under Review @break @case('approved') Approved @break @case('rejected') Rejected @break @case('setup_started') Setup Started @break @case('invited') Invited @break @case('setup_complete') Setup Complete @break @endswitch
Submitted: {{ $application->submitted_at ? $application->submitted_at->format('M d, Y h:i A') : 'N/A' }}
{{-- Onboarding progress tracker --}} @php $stages = ['pending' => 'Received', 'under_review' => 'Reviewed', 'approved' => 'Approved', 'setup_started' => 'Setup Started', 'invited' => 'Invitations Sent', 'setup_complete' => 'Complete']; $statusOrder = array_keys($stages); $currentIdx = array_search($application->status, $statusOrder); if ($application->status === 'rejected') $currentIdx = -1; @endphp
@foreach($stages as $key => $label) @php $idx = array_search($key, $statusOrder); @endphp
@if($idx <= $currentIdx) @else {{ $idx + 1 }} @endif
{{ $label }}
@endforeach
{{-- Location Information --}}
Location Information
Location Name{{ $application->location_name }}
Business Name{{ $application->business_name }}
City{{ $application->city }}, {{ $application->country }}
Address{{ $application->address }}
Tax Status{{ ucfirst(str_replace('_', ' ', $application->tax_status)) }}
Tax ID{{ $application->tax_id ?: '—' }}
Reg Number{{ $application->business_reg_number ?: '—' }}
Insurance{{ ucfirst($application->insurance_status) }} {{ $application->insurance_details ? '— '.$application->insurance_details : '' }}
{{-- Access & Facilities --}}
Access & Facilities
Access Method{{ ucfirst(str_replace('_', ' ', $application->access_method)) }} {{ $application->access_notes ? '— '.$application->access_notes : '' }}
Parking{{ ucfirst(str_replace('_', ' ', $application->parking)) }}
Load-in{{ ucfirst(str_replace('_', ' ', $application->load_in_access)) }}
Accessibility{{ is_array($application->accessibility) ? implode(', ', array_map(fn($a) => ucfirst(str_replace('_', ' ', $a)), $application->accessibility)) : '—' }}
Operating Hours
@foreach($application->operating_hours ?? [] as $h) @endforeach
DaysOpenClose
{{ $h['days'] ?? '' }}{{ $h['open'] ?? '' }}{{ $h['close'] ?? '' }}
@if($application->closed_dates_notes)

Closed dates: {{ $application->closed_dates_notes }}

@endif
{{-- Payout --}}
Payout Details
Entity Name{{ $application->payout_entity_name }}
Method{{ $application->payout_method ? ucfirst(str_replace('_', ' ', $application->payout_method)) : '—' }}
Currency{{ $application->payout_currency }}
{{-- Location Managers --}}
Location Managers
@foreach($application->location_managers ?? [] as $mgr) @endforeach
NameTitleEmailWhatsAppLanguages
{{ $mgr['name'] ?? '' }} {{ $mgr['title'] ?? '—' }} {{ $mgr['email'] ?? '' }} {{ $mgr['whatsapp'] ?? '—' }} {{ $mgr['languages'] ?? '—' }}
{{-- Studios --}} @foreach($application->studios as $studio)
{{ $studio->studio_label ?: 'Studio' }} {{ ucfirst(str_replace('-', ' ', $studio->vertical_slug)) }}
Capacity{{ $studio->max_capacity }} people
Floor Area{{ $studio->floor_area_sqm ? $studio->floor_area_sqm.' sqm' : '—' }}
Private Mode{{ $studio->mode_private ? 'Yes' : 'No' }}
Shared Mode{{ $studio->mode_shared ? 'Yes' : 'No' }}
Min Duration{{ $studio->min_booking_duration }}
Buffer{{ $studio->buffer_minutes }} min
Advance Limit{{ str_replace('_', ' ', $studio->advance_booking_limit) }}
{{-- Pricing compliance panel --}}
Pricing
@if($studio->rate_hourly) @endif @if($studio->rate_half_day) @endif @if($studio->rate_full_day) @endif @if($studio->rate_per_person) @endif
RateCurrent80% Target
Hourly {{ number_format($studio->rate_hourly / 100, 2) }} {{ $studio->rate_currency }} {{ number_format($studio->rate_hourly * 0.8 / 100, 2) }} {{ $studio->rate_currency }}
Half-day {{ number_format($studio->rate_half_day / 100, 2) }} {{ $studio->rate_currency }} {{ number_format($studio->rate_half_day * 0.8 / 100, 2) }} {{ $studio->rate_currency }}
Full-day {{ number_format($studio->rate_full_day / 100, 2) }} {{ $studio->rate_currency }} {{ number_format($studio->rate_full_day * 0.8 / 100, 2) }} {{ $studio->rate_currency }}
Per-person {{ number_format($studio->rate_per_person / 100, 2) }} {{ $studio->rate_currency }} {{ number_format($studio->rate_per_person * 0.8 / 100, 2) }} {{ $studio->rate_currency }}
@if($studio->bundled_pricing)
Bundled Pricing: {{ $studio->bundled_pricing_notes ?: 'Partner flagged bundled rate — separation required.' }}
@endif
{{-- Studio Manager --}} @if($studio->studio_manager_email)
Studio Manager
Email{{ $studio->studio_manager_email }}
WhatsApp{{ $studio->studio_manager_whatsapp ?: '—' }}
Same as LM{{ $studio->studio_manager_is_lm ? 'Yes' : 'No' }}
Also Bookable{{ $studio->studio_manager_is_resource ? 'Yes' : 'No' }}
@endif {{-- Equipment --}} @if(count($studio->equipment_present ?? []) > 0 || $studio->equipment_missing || $studio->equipment_additional)
Equipment
@if(count($studio->equipment_present ?? []) > 0)
@foreach($studio->equipment_present as $eq) {{ $eq }} @endforeach
@endif @if($studio->equipment_missing)

Missing: {{ $studio->equipment_missing }}

@endif @if($studio->equipment_additional)

Additional: {{ $studio->equipment_additional }}

@endif @if($studio->equipment_mandatory_operator_notes)

Mandatory operator: {{ $studio->equipment_mandatory_operator_notes }}

@endif @endif {{-- Roles --}} @if($studio->roles->count() > 0)
Bookable Roles
@foreach($studio->roles as $role) @endforeach
RoleHourly RateMandatoryHeadcount
{{ $role->role_type }} {{ $role->current_hourly_rate ? number_format($role->current_hourly_rate / 100, 2).' '.$studio->rate_currency : '—' }} {{ $role->is_mandatory ? 'Yes' : 'No' }} {{ $role->headcount }}
@endif
@endforeach {{-- Rentals --}} @if($application->rentals->count() > 0)
Rental Equipment
@foreach($application->rentals as $rental) @endforeach
ItemCategoryDay RateOff-siteMandatory RoleNotes
{{ $rental->item_name }} {{ ucfirst(str_replace('_', ' ', $rental->category)) }} {{ $rental->current_day_rate ? number_format($rental->current_day_rate / 100, 2) : '—' }} {{ $rental->available_offsite ? 'Yes' : 'No' }} {{ $rental->offsite_mandatory_role ?: '—' }} {{ $rental->notes ?: '—' }}
@endif {{-- Additional Notes --}} @if($application->additional_notes)
Additional Notes

{{ $application->additional_notes }}

@endif
{{-- Right column: actions & review history --}}
{{-- Review Actions --}} @if(!in_array($application->status, ['rejected', 'setup_complete']))
Review Actions
@csrf
@endif {{-- Review History --}}
Review History
@forelse($application->reviews as $review)
{{ ucfirst(str_replace('_', ' ', $review->action)) }} {{ $review->created_at ? $review->created_at->format('M d, Y h:i A') : '' }}
by {{ $review->reviewer ? trim(($review->reviewer->fname ?? '').' '.($review->reviewer->lname ?? '')) : 'Unknown' }} @if($review->notes)

{{ $review->notes }}

@endif
@empty

No review actions yet.

@endforelse
{{-- Meta --}}
Submission Info
IP Address{{ $application->ip_address ?: '—' }}
Token{{ Str::limit($application->token, 20) }}
Created{{ $application->created_at?->format('M d, Y h:i A') }}
@endsection @section('footer_scripts') @endsection