ldc-agis/routes/web-bo.php
2023-10-23 16:29:49 +02:00

157 lines
7.3 KiB
PHP

<?php
use App\Http\Controllers\Bo\ActivityLogsController;
use App\Http\Controllers\Bo\CommitmentController;
use App\Http\Controllers\Bo\ConvictionpageController;
use App\Http\Controllers\Bo\DashboardController;
use App\Http\Controllers\Bo\ExplorerpageController;
use App\Http\Controllers\Bo\HomepageController;
use App\Http\Controllers\Bo\NewsController;
use App\Http\Controllers\Bo\ProductController;
use App\Http\Controllers\Bo\StaticPageController;
use App\Http\Controllers\Bo\RangeController;
use App\Http\Controllers\Bo\SeasonalSectionController;
use App\Http\Controllers\Bo\StampController;
use App\Http\Controllers\Bo\UsersController;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Route;
Route::prefix('bo')
->name('bo.')
->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::middleware('auth:backend')->group(function () {
Route::get('/', [DashboardController::class, 'index'])->name('dashboard');
// * USERS.
Route::resource('users', UsersController::class)->except('show');
Route::patch('/users/{user}/change-published', [
UsersController::class, 'changePublished'
])->name('users.change-published');
Route::get('/users/{user}/duplicate', [
UsersController::class, 'duplicate'
])->name('users.duplicate');
// * COMMITMENTS
Route::resource('commitments', CommitmentController::class)->except(['show']);
Route::get('/commitments/{commitment}/duplicate', [
CommitmentController::class, 'duplicate'
])->name('commitments.duplicate');
// Change order.
Route::patch('/commitments/{commitment}/change-order/{direction}', [
CommitmentController::class, 'changeOrder'
])->where('direction', 'up|down')->name('commitments.change-order');
// * STATIC_PAGES
Route::resource('pages', StaticPageController::class)
->names([
'index' => 'static_pages.index',
'edit' => 'static_pages.edit',
'update' => 'static_pages.update',
])
->parameters(['pages' => 'static_page'])
->only(['index', 'edit', 'update'])
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:content');
// * RANGES.
Route::resource('ranges', RangeController::class)->except('show')
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:description');
Route::patch('/ranges/{range}/change-published', [
RangeController::class, 'changePublished'
])->name('ranges.change-published');
Route::patch('/ranges/{range}/change-order/{direction}', [
RangeController::class, 'changeOrder'
])->where('direction', 'up|down')->name('ranges.change-order');
Route::get('/ranges/{range}/duplicate', [
RangeController::class, 'duplicate'
])->name('ranges.duplicate');
// * NEWS.
Route::resource('news', NewsController::class)->except('show')
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:content');
Route::patch('/news/{news}/change-published', [
NewsController::class, 'changePublished'
])->name('news.change-published');
Route::patch('/news/{news}/change-order/{direction}', [
RangeController::class, 'changeOrder'
])->where('direction', 'up|down')->name('news.change-order');
Route::get('/news/{news}/duplicate', [
NewsController::class, 'duplicate'
])->name('news.duplicate');
// * SEASONAL SECTIONS.
Route::resource('seasonalsections', SeasonalSectionController::class)->except('show')
->parameters(['seasonalsections' => 'seasonal_section'])
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:text');
Route::patch('/seasonalsections/{seasonal_section}/change-published', [
SeasonalSectionController::class, 'changePublished'
])->name('seasonalsections.change-published');
Route::get('/seasonalsections/{seasonal_section}/duplicate', [
SeasonalSectionController::class, 'duplicate'
])->name('seasonalsections.duplicate');
// * HOMEPAGE
Route::resource('homepages', HomepageController::class)->only(['index', 'edit', 'update'])
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:presentation_content');
// * STAMPS
Route::resource('stamps', StampController::class)->except('show')
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:description');
Route::patch('/stamps/{stamp}/change-published', [
StampController::class, 'changePublished'
])->name('stamps.change-published');
Route::patch('/stamps/{stamp}/change-order/{direction}', [
StampController::class, 'changeOrder'
])->where('direction', 'up|down')->name('stamps.change-order');
Route::get('/stamps/{stamp}/duplicate', [
StampController::class, 'duplicate'
])->name('stamps.duplicate');
// * EXPLORERPAGE
Route::resource('explorerpages', ExplorerpageController::class)->only(['index', 'edit', 'update']);
// * PRODUCTS
Route::resource('products', ProductController::class)->except('show')
->withoutMiddleware('htmlsanitize')
->middleware('htmlsanitize:description,cooking_advice,ingredients');
Route::patch('/products/{product}/change-published', [
ProductController::class, 'changePublished'
])->name('products.change-published');
Route::patch('/products/{product}/change-order/{direction}', [
ProductController::class, 'changeOrder'
])->where('direction', 'up|down')->name('products.change-order');
Route::get('/products/{product}/duplicate', [
ProductController::class, 'duplicate'
])->name('products.duplicate');
// * CONVICTIONPAGES
Route::resource('convictionpages', ConvictionpageController::class)->only(['index', 'edit', 'update']);
Route::middleware('can:isConceptor')->group(function () {
// * ACTIVITY LOGS.
Route::resource('activity_logs', ActivityLogsController::class)->only(['index', 'show']);
});
});
// * Others routes
Route::post('theme/set', [Controller::class, 'setTheme'])->name('theme.set');
});