36 lines
985 B
PHP
36 lines
985 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\User;
|
|
use App\Models\UserFlight;
|
|
use App\Http\Resources\UserFlightResource;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Inertia\Inertia;
|
|
|
|
class FlightProfileController extends Controller
|
|
{
|
|
public function view(string $username)
|
|
{
|
|
$user = User::whereRaw(DB::raw('LOWER(name) = ?'), [strtolower($username)])->firstOrFail();
|
|
|
|
$flights = UserFlight::where('user_id', $user->id)
|
|
->with([
|
|
'departureAirport.region.country',
|
|
'arrivalAirport.region.country',
|
|
'airline.country',
|
|
'aircraft',
|
|
'seatType',
|
|
'flightReason',
|
|
'flightClass',
|
|
])
|
|
->orderBy('departure_date', 'desc')
|
|
->get();
|
|
|
|
return Inertia::render('FlightProfile', [
|
|
'user' => $user,
|
|
'flights' => UserFlightResource::collection($flights)->resolve(),
|
|
]);
|
|
}
|
|
}
|