{{-- resources/views/trips/show.blade.php --}} @extends('layouts.dashboard') @section('title', $trip->title . ' - PangoQ') @section('content')
@if ($trip->image_url) {{ $trip->title }} @endif
{{ ucfirst($trip->status) }}

{{ $trip->title }}

{{ $trip->destination_name }}

{{ $trip->date_range }}
{{ $trip->duration }} {{ Str::plural('day', $trip->duration) }}
@if ($trip->budget)
${{ number_format($trip->budget, 0) }} budget
@endif
{{ $trip->members->count() }} {{ Str::plural('traveler', $trip->members->count()) }}

Trip Details

@if ($trip->description)
Description
{{ $trip->description }}
@endif
Duration
{{ $trip->date_range }}
{{ $trip->duration }} {{ Str::plural('day', $trip->duration) }}
Budget
{{ $trip->budget ? '$' . number_format($trip->budget, 0) : 'Not specified' }}
@if ($trip->budget)
${{ $trip->duration > 0 ? number_format($trip->budget / $trip->duration, 0) : '0' }} per day
@endif
@if ($trip->savingsWallet)

Savings Progress

${{ number_format($trip->savingsWallet->current_amount, 0) }}
of ${{ number_format($trip->savingsWallet->target_amount, 0) }} goal
{{ $trip->savingsWallet->progress_percentage }}%
Complete
${{ number_format($trip->savingsWallet->remaining_amount, 0) }} remaining @if ($trip->savingsWallet->target_date) Due {{ \Carbon\Carbon::parse($trip->savingsWallet->target_date)->format('M j, Y') }} @endif
@endif

Itinerary Preview

View Full Itinerary
@php // Check if we have activities in itineraries first $hasItineraryActivities = $trip->itineraries->sum(function ($i) { return $i->activities->count(); }) > 0; // For pre-planned trips, try to get template activities $templateActivities = collect(); if (!$hasItineraryActivities && $trip->planning_type === 'pre_planned') { if ($trip->tripTemplate) { // Use the relationship if it exists $templateActivities = $trip->tripTemplate->activities; } else { // Fallback: try to find template by destination name $template = \App\Models\TripTemplate::whereHas('destination', function ( $q, ) use ($trip) { $q->where('name', $trip->destination); })->first(); if ($template) { $templateActivities = $template->activities; } } } $useTemplateActivities = $templateActivities->count() > 0; @endphp @if ($hasItineraryActivities) {{-- Show regular itinerary activities --}}
@foreach ($trip->itineraries->sortBy('day_number')->take(3) as $itinerary)

Day {{ $itinerary->day_number }}

{{ $itinerary->date->format('M j, Y') }}
@if ($itinerary->activities->count() > 0)
@foreach ($itinerary->activities->take(3) as $activity)
{{ $activity->title }} @if ($activity->is_highlight) @endif @if ($activity->is_optional) Optional @endif
@if ($activity->location)
{{ $activity->location }}
@endif
@if ($activity->start_time)
{{ \Carbon\Carbon::parse($activity->start_time)->format('g:i A') }} @if ($activity->end_time) - {{ \Carbon\Carbon::parse($activity->end_time)->format('g:i A') }} @endif
@endif @if ($activity->cost > 0)
${{ number_format($activity->cost, 0) }}
@endif
@endforeach @if ($itinerary->activities->count() > 3)
+{{ $itinerary->activities->count() - 3 }} more activities
@endif
@else

No activities planned for this day

@endif
@endforeach @if ($trip->itineraries->count() > 3)
+{{ $trip->itineraries->count() - 3 }} more days planned
@endif
@elseif ($useTemplateActivities) {{-- Fallback to template activities for pre-planned trips --}}
@for ($day = 1; $day <= min($trip->duration_days, 3); $day++) @php $dayActivities = $templateActivities ->where('day_number', $day) ->where('is_optional', false) ->sortBy('start_time'); $dayDate = $trip->start_date ? $trip->start_date->addDays($day - 1) : null; @endphp

Day {{ $day }}

{{ $dayDate ? $dayDate->format('M j, Y') : 'Date TBD' }}
@if ($dayActivities->count() > 0)
@foreach ($dayActivities->take(3) as $activity)
{{ $activity->title }} @if ($activity->is_highlight) @endif
@if ($activity->location)
{{ $activity->location }}
@endif
@if ($activity->start_time)
{{ \Carbon\Carbon::parse($activity->start_time)->format('g:i A') }} @if ($activity->end_time) - {{ \Carbon\Carbon::parse($activity->end_time)->format('g:i A') }} @endif
@endif @if ($activity->cost > 0)
${{ number_format($activity->cost, 0) }}
@endif
@endforeach @if ($dayActivities->count() > 3)
+{{ $dayActivities->count() - 3 }} more activities
@endif
@else

No activities planned for this day

@endif
@endfor @if ($trip->duration_days > 3)
+{{ $trip->duration_days - 3 }} more days planned
@endif
@else {{-- Empty state --}}

No itinerary items yet

Start planning your trip by adding activities and destinations.

Plan Itinerary
@endif

Travel Companions {{ $trip->members->count() }}

@foreach ($trip->members as $member)
{{ strtoupper(substr($member->display_name, 0, 2)) }}

{{ $member->display_name }}

@if ($member->display_email)

{{ $member->display_email }}

@endif @if ($member->display_phone)

{{ $member->formatted_phone ?: $member->display_phone }}

@endif
@if ($member->user_id === $trip->creator_id) Organizer @endif @if ($member->invitation_status === 'pending') Pending @elseif($member->invitation_status === 'accepted') Confirmed @elseif($member->invitation_status === 'declined') Declined @endif @if (!$member->user_id && $member->invitation_email) Guest @endif
@if (auth()->id() === $trip->creator_id && $member->user_id !== $trip->creator_id)
@if ($member->invitation_status === 'pending') @endif
@endif
@endforeach
@if ($trip->adults_count > 0 || $trip->children_count > 0)
@if ($trip->adults_count > 0)
{{ $trip->adults_count }} {{ $trip->adults_count === 1 ? 'Adult' : 'Adults' }}
@endif @if ($trip->children_count > 0)
{{ $trip->children_count }} {{ $trip->children_count === 1 ? 'Child' : 'Children' }}
@endif
Total: {{ $trip->adults_count + $trip->children_count }} {{ $trip->adults_count + $trip->children_count === 1 ? 'Traveler' : 'Travelers' }}
@if ($trip->children_count > 0)
Child-friendly trip
@endif
@endif

Quick Actions

Edit Trip Details Edit Itinerary @if (!$trip->savingsWallet) Set Up Savings @endif

Trip Statistics

{{ $trip->itineraries->count() }}
{{ Str::plural('Day', $trip->itineraries->count()) }}
{{ $trip->itineraries->sum(function ($itinerary) { return $itinerary->activities->count(); }) }}
Activities
{{ $trip->members->count() }}
{{ Str::plural('Traveler', $trip->members->count()) }}
@if ($trip->budget && $trip->duration > 0) ${{ number_format($trip->budget / $trip->duration, 0) }} @else -- @endif
Per Day
Edit Trip @if (!$trip->savingsWallet) Set Up Savings @endif
@endsection