summaryrefslogtreecommitdiff
path: root/routes/web.php
diff options
context:
space:
mode:
Diffstat (limited to 'routes/web.php')
-rw-r--r--routes/web.php41
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');
+});