first(); if(!$user) return [ 'message' => 'User not found', ]; $flight = UserFlight::with(['departureAirport', 'arrivalAirport', 'airline', 'aircraft']) ->where('user_id', $user->id) ->where('departure_date', '>', now()->utc()) ->orderBy('departure_date', 'asc') ->first(); $departure = Carbon::parse($flight->departure_date)->setTimezone($flight->departureAirport->timezone); $arrival = Carbon::parse($flight->arrival_date)->setTimezone($flight->arrivalAirport->timezone); return [ 'departureAirportCode' => $flight->departureAirport->iata_code, 'departureCity' => $flight->departureAirport->municipality, 'departureDateReadable' => $departure->format('F j'), 'departureTime' => $departure->format('H:i'), 'arrivalAirportCode' => $flight->arrivalAirport->iata_code, 'arrivalCity' => $flight->arrivalAirport->municipality, 'arrivalDateReadable' => $arrival->format('F j'), 'arrivalTime' => $arrival->format('H:i'), 'flightNumber' => $flight->flight_number, 'airlineName' => $flight->airline->name, 'aircraftType' => $flight->aircraft->manufacturer_code . ' ' . $flight->aircraft->model_full_name, 'logoUrl' => $flight->airline->logo_url, ]; } function flights(string $username){ } }