Files
L-Ami-Fiduciaire/routes/web.php

55 lines
2.8 KiB
PHP
Raw Normal View History

<?php
use Illuminate\Support\Facades\Route;
use Laravel\Fortify\Features;
Route::inertia('/', 'Welcome', [
'canRegister' => Features::enabled(Features::registration()),
])->name('home');
Route::middleware(['auth', 'verified'])->group(function () {
Route::get('dashboard', \App\Http\Controllers\DashboardController::class)->name('dashboard');
Route::post('workspace/switch', \App\Http\Controllers\WorkspaceSwitchController::class)
->name('workspace.switch');
Route::middleware('workspace')->group(function () {
Route::resource('clients', \App\Http\Controllers\ClientController::class);
Route::resource('folders', \App\Http\Controllers\FolderController::class);
Route::post('folders/{folder}/messages', [\App\Http\Controllers\FolderMessageController::class, 'store'])
->name('folders.messages.store');
Route::post('folders/{folder}/media', [\App\Http\Controllers\FolderMediaController::class, 'store'])
->name('folders.media.store');
Route::get('folders/{folder}/media/{mediaId}', [\App\Http\Controllers\FolderMediaController::class, 'download'])
->name('folders.media.download')
->whereNumber('mediaId');
Route::post('folders/{folder}/mentions', [\App\Http\Controllers\FolderMentionController::class, 'store'])
->middleware('throttle:10,1')
->name('folders.mentions.store');
});
Route::post('notifications/{id}/read', [\App\Http\Controllers\NotificationController::class, 'markAsRead'])->name('notifications.read');
Route::post('notifications/read-all', [\App\Http\Controllers\NotificationController::class, 'markAllAsRead'])->name('notifications.readAll');
Route::middleware('admin')->group(function () {
Route::resource('users', \App\Http\Controllers\UserController::class);
Route::resource('workspaces', \App\Http\Controllers\WorkspaceController::class);
});
});
Route::prefix('c')->name('client.')->middleware('folder.invitation')->group(function () {
Route::get('upload/{token}', [\App\Http\Controllers\Client\UploadController::class, 'show'])
->name('upload');
Route::post('upload/{token}', [\App\Http\Controllers\Client\UploadController::class, 'store'])
->name('upload.store');
Route::get('confirm/{token}', [\App\Http\Controllers\Client\ConfirmController::class, 'show'])
->name('confirm');
Route::post('confirm/{token}', [\App\Http\Controllers\Client\ConfirmController::class, 'store'])
->name('confirm.store');
Route::get('refuse/{token}', [\App\Http\Controllers\Client\RefuseController::class, 'show'])
->name('refuse');
Route::post('refuse/{token}', [\App\Http\Controllers\Client\RefuseController::class, 'store'])
->name('refuse.store');
});
require __DIR__.'/settings.php';