ldc-nature-eleveurs/routes/web-bo.php
2025-03-12 11:11:02 +01:00

75 lines
3 KiB
PHP

<?php
use App\Http\Controllers\Bo\ActivityLogController;
use App\Http\Controllers\Bo\DashboardController;
use App\Http\Controllers\Bo\GeneralConfigController;
use App\Http\Controllers\Bo\UserController;
use App\Http\Controllers\Bo\StaticPageController;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
Route::prefix('bo')
->name('bo.')
->middleware('admin-secure')
->group(function () {
// * Authenticable routes
Route::namespace('\App\Http\Controllers\Bo')
->group(function () {
Auth::routes(
[
'confirm' => false,
'login' => true,
'logout' => true,
'register' => false,
'reset' => false,
'verify' => false,
]
);
Route::get('/login-error', function () {
return view('bo.pages.login-error');
})->name('login-error');
});
Route::middleware('auth:backend')->group(function () {
Route::get('/', [DashboardController::class, 'index'])->name('dashboard');
// * GENERAL CONFIG.
Route::resource('general_configs', GeneralConfigController::class)
->only(['edit', 'update'])
->withoutMiddleware('htmlsanitize')
->middleware(['htmlsanitize:data']);
// * USERS.
Route::resource('users', UserController::class)->except('show');
Route::patch('/users/{user}/change-published', [
UserController::class,
'changePublished'
])->name('users.change-published');
Route::get('/users/{user}/duplicate', [
UserController::class,
'duplicate'
])->name('users.duplicate');
// * StaticPages
Route::resource('pages', StaticPageController::class)
->names([
'index' => 'static_pages.index',
'show' => 'static_pages.show',
'edit' => 'static_pages.edit',
'update' => 'static_pages.update',
])->parameters(['pages' => 'static_page'])
->only(['index', 'show', 'edit', 'update'])
->withoutMiddleware('htmlsanitize')
->middleware(['htmlsanitize:content']);
Route::middleware('can:isConceptor')->group(function () {
// * ACTIVITY LOGS.
Route::resource('activity_logs', ActivityLogController::class)->only(['index', 'show']);
Route::get('/activity_logs/user/{user:id}', [ActivityLogController::class, 'index'])
->name('activity_logs.user');
});
});
// * Others routes
Route::post('theme/set', [Controller::class, 'setTheme'])->name('theme.set');
});