43 lines
2.0 KiB
PHP
43 lines
2.0 KiB
PHP
<?php
|
|
use Illuminate\Http\Request;
|
|
use Illuminate\Support\Facades\Route;
|
|
use App\Http\Controllers\MigrantController;
|
|
use App\Http\Controllers\AuthController;
|
|
use App\Http\Controllers\HistoricalSearchController;
|
|
use App\Http\Controllers\DashboardController;
|
|
use App\Http\Controllers\ActivityLogController;
|
|
|
|
// Public routes
|
|
Route::post('/login', [AuthController::class, 'login'])->name('login');
|
|
Route::get('/migrants', [MigrantController::class, 'index']);
|
|
Route::get('/migrants/{id}', [MigrantController::class, 'show']);
|
|
Route::get('/migrants/{id}/photos', [MigrantController::class, 'getPhotos']);
|
|
|
|
// Protected routes - require Sanctum authentication
|
|
Route::middleware('auth:sanctum')->group(function () {
|
|
Route::put('/user/account', [AuthController::class, 'update']);
|
|
|
|
// User routes
|
|
Route::get('/user', [AuthController::class, 'me'])->name('user.profile');
|
|
Route::post('/logout', [AuthController::class, 'logout'])->name('logout');
|
|
|
|
// Dashboard routes
|
|
Route::get('/dashboard/stats', [DashboardController::class, 'getStats']);
|
|
Route::get('/activity-logs', [ActivityLogController::class, 'index']);
|
|
|
|
// Migrant CRUD routes (now includes photo uploads)
|
|
Route::post('/migrants', [MigrantController::class, 'store']);
|
|
Route::put('/migrants/{id}', [MigrantController::class, 'update']);
|
|
Route::patch('/migrants/{id}', [MigrantController::class, 'update']);
|
|
Route::delete('/migrants/{id}', [MigrantController::class, 'destroy']);
|
|
|
|
// Photo management routes
|
|
Route::post('/migrants/{id}/photos', [MigrantController::class, 'uploadPhotos']);
|
|
Route::post('/migrants/photos/{photoId}/set-as-profile', [MigrantController::class, 'setAsProfilePhoto']);
|
|
Route::put('/migrants/photos/{photoId}/caption', [MigrantController::class, 'updatePhotoCaption']);
|
|
Route::delete('/migrants/photos/{photoId}', [MigrantController::class, 'deletePhoto']);
|
|
|
|
Route::post('/register', [AuthController::class, 'register'])->name('register');
|
|
Route::get('/users', [AuthController::class, 'getAllUsers'])->name('users.index');
|
|
});
|