diff options
Diffstat (limited to 'routes/web.php')
| -rw-r--r-- | routes/web.php | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/routes/web.php b/routes/web.php new file mode 100644 index 0000000..a0d2ae8 --- /dev/null +++ b/routes/web.php @@ -0,0 +1,41 @@ +<?php + +use App\Http\Controllers\FileController; +use Illuminate\Support\Facades\Route; + +Route::get('/', function () { + return view('welcome'); +}); + +// File Upload Routes +Route::prefix('files')->name('files.')->group(function () { + // Upload page + Route::get('/upload', [FileController::class, 'showUploadForm']) + ->name('upload.form'); + + // Standard upload (non-JS fallback) + Route::post('/upload', [FileController::class, 'upload']) + ->middleware('throttle:fileupload') + ->name('upload'); + + // Chunked upload endpoints + Route::post('/upload/chunk', [FileController::class, 'uploadChunk']) + ->middleware('throttle:fileupload') + ->name('upload.chunk'); + + Route::post('/upload/chunk/complete', [FileController::class, 'completeChunkedUpload']) + ->middleware('throttle:fileupload') + ->name('upload.chunk.complete'); + + // Browse all files + Route::get('/browse', [FileController::class, 'browse']) + ->name('browse'); + + // Gallery view for images and videos + Route::get('/gallery', [FileController::class, 'gallery']) + ->name('gallery'); + + // Download file + Route::get('/download/{file}', [FileController::class, 'download']) + ->name('download'); +}); |
