diff --git a/resources/js/Types/types.d.ts b/resources/js/Types/types.d.ts
index f1a7bbb..6f0f130 100644
--- a/resources/js/Types/types.d.ts
+++ b/resources/js/Types/types.d.ts
@@ -300,6 +300,7 @@ export interface Flight {
range: FlightRange
region_range: RegionRange
livery_url?: string
+ user?: User | null
}
diff --git a/routes/api.php b/routes/api.php
index 3310d51..2668b89 100644
--- a/routes/api.php
+++ b/routes/api.php
@@ -3,6 +3,7 @@
use App\Http\Controllers\Api\AircraftApiController;
use App\Http\Controllers\Api\AirlineApiController;
use App\Http\Controllers\Api\UserApiController;
+use App\Http\Controllers\FeedController;
use App\Http\Controllers\HomePageController;
use Illuminate\Support\Facades\Route;
@@ -16,7 +17,11 @@ Route::domain(config('app.api_domain'))->group(function () {
Route::prefix('internal')->middleware('sanctum.or.trusted')->group(function () {
Route::get('/user/{user}/flights', [UserApiController::class, 'viewableFlights'])->name('api.user.flights');
Route::get('/user/{user}/flights/departed', [UserApiController::class, 'viewableDepartedFlights'])->name('api.user.flights.departed');
- Route::get('/flights/most-recent', [HomePageController::class ,'mostRecentFlights'])->name('api.user.flights.departed');
+ Route::get('/flights/most-recent', [HomePageController::class ,'mostRecentFlights'])->name('home-page.most-recent-flights');
+ Route::get('/feed/following', [FeedController::class ,'following'])->name('feed.following');
+ Route::get('/feed/following-flights', [FeedController::class ,'followingFlights'])->name('feed.following-flights');
+
+
});
diff --git a/routes/web.php b/routes/web.php
index 52242e3..f9b4947 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -1,114 +1,89 @@
group(
- function() {
- Route::get('/', [UserProfileController::class, 'index'])->name('home');
+* App Routes
+*/
+ Route::get('/', [UserProfileController::class, 'index'])->name('home');
- Route::get('/splash', [HomePageController::class, 'splash'])->name('splash');
+ Route::get('/splash', [HomePageController::class, 'splash'])->name('splash');
- Route::get('/dashboard', function () {
- return Inertia::render('Dashboard');
- })->middleware(['auth', 'verified'])->name('dashboard');
+ Route::get('/dashboard', function () {
+ return Inertia::render('Dashboard');
+ })->middleware(['auth', 'verified'])->name('dashboard');
- Route::middleware(['auth', 'role:admin'])->prefix('admin')->name('admin.')->group(function () {
- Route::get('/', [AdminController::class, 'dashboard'])->name('dashboard');
- Route::get('/missing-liveries', [AdminController::class, 'reconcileMissingLiveries'])->name('reconcile-missing-liveries')->middleware('permission:reconcile_missing_liveries');
- Route::post('/ignore-missing-livery', [AdminController::class, 'ignoreMissingLivery'])->name('ignore-missing-livery');
- });
+ Route::middleware(['auth', 'role:admin'])->prefix('admin')->name('admin.')->group(function () {
+ Route::get('/', [AdminController::class, 'dashboard'])->name('dashboard');
+ Route::get('/missing-liveries', [AdminController::class, 'reconcileMissingLiveries'])->name('reconcile-missing-liveries')->middleware('permission:reconcile_missing_liveries');
+ Route::post('/ignore-missing-livery', [AdminController::class, 'ignoreMissingLivery'])->name('ignore-missing-livery');
+ });
- Route::middleware('auth')->group(function () {
- Route::post('/flights', [FlightController::class, 'store'])->name('flights.store');
- Route::get('/flights/add', [FlightController::class, 'add'])->name('flights.add');
- Route::get('/flights/{flight}/edit', [FlightController::class, 'edit'])->name('flights.edit');
- Route::put('/flights/{flight}', [FlightController::class, 'update'])->name('flights.update');
- Route::delete('/flights/{flight}/{referrer?}', [FlightController::class, 'delete'])->name('flights.delete');
+ Route::middleware('auth')->group(function () {
+ Route::post('/flights', [FlightController::class, 'store'])->name('flights.store');
+ Route::get('/flights/add', [FlightController::class, 'add'])->name('flights.add');
+ Route::get('/flights/{flight}/edit', [FlightController::class, 'edit'])->name('flights.edit');
+ Route::put('/flights/{flight}', [FlightController::class, 'update'])->name('flights.update');
+ Route::delete('/flights/{flight}/{referrer?}', [FlightController::class, 'delete'])->name('flights.delete');
- Route::patch('/settings/{key}', [SettingsController::class, 'updateSingle'])
- ->where('key', '[a-z_]+')
- ->name('settings.update-single');
+ Route::patch('/settings/{key}', [SettingsController::class, 'updateSingle'])
+ ->where('key', '[a-z_]+')
+ ->name('settings.update-single');
- Route::get('/import/fr24', [FlightImportController::class, 'showFr24Import'])->name('import.fr24');
- Route::get('/reconcile', [FlightImportController::class, 'reconcile'])->name('reconcile');;
+ Route::get('/import/fr24', [FlightImportController::class, 'showFr24Import'])->name('import.fr24');
+ Route::get('/reconcile', [FlightImportController::class, 'reconcile'])->name('reconcile');;
- Route::get('/flights/lookup', [FlightController::class, 'lookup'])->name('flights.lookup');
- Route::post('/flights/import', [FlightImportController::class, 'store'])->name('flights.import.store');
-
- Route::post('/u/{user}/follow', [UserController::class, 'follow'])->name('profile.follow');
-
- Route::get('/settings/{category?}', [UserController::class, 'settings'])->name('user.settings');
+ Route::get('/flights/lookup', [FlightController::class, 'lookup'])->name('flights.lookup');
+ Route::post('/flights/import', [FlightImportController::class, 'store'])->name('flights.import.store');
- Route::get('/notifications', [NotificationController::class, 'index'])->name('notifications.get');
- Route::patch('/notifications/{notification}/read', [NotificationController::class, 'markRead']);
-
- Route::get('/feed', [FeedController::class, 'view'])->name('feed');
-
- Route::patch('/settings', [SettingsController::class, 'update'])->name('settings.update');
-
- Route::get('/followers', [FollowerController::class, 'index'])->name('followers.index');
- Route::post('/followers/{follower}/approve', [FollowerController::class, 'approve'])->name('followers.approve');
- Route::post('/followers/{follower}/deny', [FollowerController::class, 'deny'])->name('followers.deny');
- Route::delete('/followers/{follower}', [FollowerController::class, 'remove'])->name('followers.remove');
-
- });
-
- Route::post('/import/save', [FlightImportController::class, 'save'])->name('import.save');
-
- //Search Routes
- Route::get('/search/airlines', [SearchController::class, 'airlines'])->name('search.airlines');
- Route::get('/search/aircraft', [SearchController::class, 'aircraft'])->name('search.aircraft');
- Route::get('/search/airports', [SearchController::class, 'airports'])->name('search.airports');
-
- Route::get('/u/{user}', [UserProfileController::class, 'view'])->name('profile.view');
- Route::get('/u/{user}/map', [UserProfileController::class, 'map'])->name('profile.map');
- Route::get('/u/{user}/departure-board/{flight?}', [UserProfileController::class, 'departureBoard'])->name('profile.departure-board');
- Route::get('/u/{user}/boarding-passes', [UserProfileController::class, 'boardingPasses'])->name('profile.boarding-passes');
- Route::get('/u/{user}/achievements', [UserProfileController::class, 'achievements'])->name('profile.achievements');
- Route::get('/u/{user}/achievement/{achievement}', [UserProfileController::class, 'achievement'])->name('profile.achievement');
- Route::get('/u/{user}/flight/{userFlight}', [UserProfileController::class, 'flight'])->name('profile.flight');
+ Route::get('/settings/{category?}', [UserController::class, 'settings'])->name('user.settings');
- require __DIR__.'/auth.php';
+ Route::get('/notifications', [NotificationController::class, 'index'])->name('notifications.get');
+ Route::patch('/notifications/{notification}/read', [NotificationController::class, 'markRead']);
- }
-);
+ Route::get('/feed', [FeedController::class, 'view'])->name('feed');
+
+ Route::patch('/settings', [SettingsController::class, 'update'])->name('settings.update');
+
+ Route::post('/u/{user}/follow', [FollowerController::class, 'follow'])->name('profile.follow');
+ Route::get('/followers', [FollowerController::class, 'index'])->name('followers.index');
+ Route::post('/followers/{follower}/approve', [FollowerController::class, 'approve'])->name('followers.approve');
+ Route::post('/followers/{follower}/deny', [FollowerController::class, 'deny'])->name('followers.deny');
+ Route::delete('/followers/{follower}', [FollowerController::class, 'remove'])->name('followers.remove');
+
+ });
+
+ Route::post('/import/save', [FlightImportController::class, 'save'])->name('import.save');
+
+ //Search Routes
+ Route::get('/search/airlines', [SearchController::class, 'airlines'])->name('search.airlines');
+ Route::get('/search/aircraft', [SearchController::class, 'aircraft'])->name('search.aircraft');
+ Route::get('/search/airports', [SearchController::class, 'airports'])->name('search.airports');
+
+ Route::get('/u/{user}', [UserProfileController::class, 'view'])->name('profile.view');
+ Route::get('/u/{user}/map', [UserProfileController::class, 'map'])->name('profile.map');
+ Route::get('/u/{user}/departure-board/{flight?}', [UserProfileController::class, 'departureBoard'])->name('profile.departure-board');
+ Route::get('/u/{user}/boarding-passes', [UserProfileController::class, 'boardingPasses'])->name('profile.boarding-passes');
+ Route::get('/u/{user}/achievements', [UserProfileController::class, 'achievements'])->name('profile.achievements');
+ Route::get('/u/{user}/achievement/{achievement}', [UserProfileController::class, 'achievement'])->name('profile.achievement');
+ Route::get('/u/{user}/flight/{userFlight}', [UserProfileController::class, 'flight'])->name('profile.flight');
-/**
- * API Routes
- */
-Route::domain(config('app.api_domain'))->group(function () {
+ require __DIR__.'/auth.php';
-});