@extends('layout.app') @section('title', __('Trips')) @push('styles') @endpush @section('active_trips', 'active') @section('data_col', '2-columns') @section('body_class', '2-columns') @section('content')
{{ __('Trips') }}
1
{{ __('Trip Info') }}
2
{{ __('Destinations') }}
3
{{ __('Passengers') }}
@csrf @if(isset($trip)) @method('PUT') @endif
@if (!isset($trip))
@endif

{{ __('Trip Information') }}

{{ __('Departure') }}

{{ __('Destinations') }}

@php $destinations = old('destinations', isset($trip) ? ($trip->destinations->count() ? $trip->destinations->toArray() : [['destination_site_id' => null, 'destination' => null]]) : [['destination_site_id' => null, 'destination' => null]]); @endphp @foreach($destinations as $index => $destination)
{{ __('Destination type:') }}
@if($loop->first) @else @endif
@endforeach

{{ __('Available Passengers') }}

@foreach($reservations as $reservation) @foreach ($reservation->passagers as $passager) @php $isAllerSelected = in_array($passager->id, old('reservation_employe_id_aller', isset($trip) ? $trip->passagers->whereNotNull('reservation_id')->where('type', 'aller')->pluck('reservation_employe_id')->toArray() : [])); $isRetourSelected = in_array($passager->id, old('reservation_employe_id_retour', isset($trip) ? $trip->passagers->whereNotNull('reservation_id')->where('type', 'retour')->pluck('reservation_employe_id')->toArray() : [])); $isSelected = $isAllerSelected || $isRetourSelected; $passengerType = $isAllerSelected ? 'aller' : ($isRetourSelected ? 'retour' : null); // Construire les adresses $allerAddress = $reservation->departAddress(0).' --> '.$reservation->destinationAddress(0); $retourAddress = $reservation->round_trip ? $reservation->departAddress(1).' --> '.$reservation->destinationAddress(1) : ''; // Sites pour le filtre $departSite = $reservation->depart_site_id ? \App\Models\Site::find($reservation->depart_site_id)?->name : ''; $destinationSite = $reservation->destination_site_id ? \App\Models\Site::find($reservation->destination_site_id)?->name : ''; // Vérifier si ce passager peut être ajouté au trajet $canBeAddedAller = ($passager->trip_id == null) || (isset($trip) && ($passager->trip_id == $trip->id)); $canBeAddedRetour = $reservation->round_trip && (($passager->return_trip_id == null) || (isset($trip) && ($passager->return_trip_id == $trip->id))); @endphp @if($canBeAddedAller)
⋮⋮
#{{ $passager->employe->reference }} {{ $passager->employe->first_name.' '.$passager->employe->last_name }}
#{{ $reservation->reference }} {{ __('Aller') }} [{{ $allerAddress }}]
@if($isAllerSelected) @endif
@endif @if($canBeAddedRetour)
⋮⋮
#{{ $passager->employe->reference }} {{ $passager->employe->first_name.' '.$passager->employe->last_name }}
#{{ $reservation->reference }} {{ __('Retour') }} [{{ $retourAddress }}]
@if($isRetourSelected) @endif
@endif @endforeach @endforeach
@foreach($allEmployees as $employee) @php $isSelected = in_array($employee->id, old('employees', isset($trip) ? $trip->passagers->whereNull('reservation_id')->pluck('employe_id')->toArray() : [])); @endphp
⋮⋮
#{{ $employee->reference }} {{ $employee->first_name }} {{ $employee->last_name }}
@if($isSelected) @endif
@endforeach

{{ __('Selected Passengers') }}

{{ __('Drag and drop passengers here') }}

@endsection @push('scripts') @endpush