first commit
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
<?php
|
||||
|
||||
use App\Http\Controllers\AuthController;
|
||||
use App\Http\Controllers\API\CityController;
|
||||
use App\Http\Controllers\API\FavoriteController;
|
||||
use App\Http\Controllers\API\TripController;
|
||||
use App\Http\Controllers\API\UserController;
|
||||
use Illuminate\Support\Facades\Route;
|
||||
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| API Routes
|
||||
|--------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
// Authentication routes (public)
|
||||
Route::post('/register', [AuthController::class, 'register']);
|
||||
Route::post('/login', [AuthController::class, 'login']);
|
||||
|
||||
// Public city routes (no authentication required)
|
||||
Route::prefix('cities')->group(function () {
|
||||
Route::get('/search', [CityController::class, 'search']);
|
||||
Route::get('/{city}', [CityController::class, 'show']);
|
||||
Route::get('/{city}/attractions', [CityController::class, 'attractions']);
|
||||
Route::get('/{city}/map-data', [CityController::class, 'mapData']);
|
||||
});
|
||||
|
||||
// Protected routes (require authentication)
|
||||
Route::middleware('auth:sanctum')->group(function () {
|
||||
// Auth routes
|
||||
Route::post('/logout', [AuthController::class, 'logout']);
|
||||
Route::get('/user', [AuthController::class, 'user']);
|
||||
|
||||
// User profile
|
||||
Route::get('/profile', [UserController::class, 'show']);
|
||||
Route::put('/profile', [UserController::class, 'update']);
|
||||
|
||||
// Cities (protected actions)
|
||||
Route::post('/cities', [CityController::class, 'store']);
|
||||
|
||||
// Favorites
|
||||
Route::get('/favorites', [FavoriteController::class, 'index']);
|
||||
Route::post('/favorites/{city}', [FavoriteController::class, 'store']);
|
||||
Route::delete('/favorites/{city}', [FavoriteController::class, 'destroy']);
|
||||
|
||||
// Trips
|
||||
Route::apiResource('trips', TripController::class);
|
||||
});
|
||||
Reference in New Issue
Block a user