feat(flights): add flight listing page
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Flight;
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class FlightController extends Controller
|
||||
{
|
||||
public function index(Request $request)
|
||||
{
|
||||
$flights = Flight::query()
|
||||
->with(['airline', 'airport', 'destinationAirport'])
|
||||
->latest()
|
||||
->paginate(2)
|
||||
->appends($request->query());
|
||||
|
||||
$flights->each(function ($flight) {
|
||||
$minutes = Carbon::parse($flight->start_time)->diffInMinutes(Carbon::parse($flight->end_time));
|
||||
|
||||
$flight->duration_hours = intdiv($minutes, 60);
|
||||
$flight->duration_minutes = $minutes % 60;
|
||||
|
||||
$flight->start_time_fa = verta($flight->start_time)->format('%H:%M');
|
||||
$flight->end_time_fa = verta($flight->end_time)->format('%H:%M');
|
||||
$flight->full_date_fa = verta($flight->start_time)->format('%A, %d %B, %Y');
|
||||
$flight->end_date_fa = verta($flight->end_time)->format('%A, %d %B, %Y');
|
||||
});
|
||||
|
||||
return view('flights.index', compact('flights'));
|
||||
}
|
||||
|
||||
public function show()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user