172 lines
7.3 KiB
PHP
172 lines
7.3 KiB
PHP
<?php
|
|
|
|
use App\Http\Controllers\Bo\ActivityLogController;
|
|
use App\Http\Controllers\Bo\DashboardController;
|
|
use App\Http\Controllers\Bo\HistoricalMilestoneController;
|
|
use App\Http\Controllers\Bo\JobVideoController;
|
|
use App\Http\Controllers\Bo\LogoController;
|
|
use App\Http\Controllers\Bo\NewsController;
|
|
use App\Http\Controllers\Bo\SectionController;
|
|
use App\Http\Controllers\Bo\SiteController;
|
|
use App\Http\Controllers\Bo\SlideController;
|
|
use App\Http\Controllers\Bo\StaticPageController;
|
|
use App\Http\Controllers\Bo\StripController;
|
|
use App\Http\Controllers\Bo\TestimonialController;
|
|
use App\Http\Controllers\Bo\UploadController;
|
|
use App\Http\Controllers\Bo\UserController;
|
|
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::get('/login-error', function () {
|
|
return view('bo.pages.login-error');
|
|
});
|
|
|
|
Route::middleware('auth:backend')->group(function () {
|
|
Route::get('/', [DashboardController::class, 'index'])->name('dashboard');
|
|
|
|
// * 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');
|
|
|
|
// * 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');
|
|
|
|
// * NEWS.
|
|
Route::resource('news', NewsController::class)->except('show')
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware('htmlsanitize:content,introduction');
|
|
Route::patch('/news/{news}/change-published', [
|
|
NewsController::class,
|
|
'changePublished'
|
|
])->name('news.change-published');
|
|
Route::patch('/news/{news}/change-order/{direction}', [
|
|
NewsController::class,
|
|
'changeOrder'
|
|
])->where('direction', 'up|down')->name('news.change-order');
|
|
Route::get('/news/{news}/duplicate', [
|
|
NewsController::class,
|
|
'duplicate'
|
|
])->name('news.duplicate');
|
|
|
|
// * SITES.
|
|
Route::resource('sites', SiteController::class)->except('show')
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware('htmlsanitize:director_speach,employee_speach,highlights,content');
|
|
Route::patch('/sites/{site}/change-order/{direction}', [
|
|
SiteController::class,
|
|
'changeOrder'
|
|
])->where('direction', 'up|down')->name('sites.change-order');
|
|
Route::get('/sites/{site}/duplicate', [
|
|
SiteController::class,
|
|
'duplicate'
|
|
])->name('sites.duplicate');
|
|
|
|
// * LOGOS.
|
|
Route::resource('logos', LogoController::class)->except('show');
|
|
Route::get('/logos/{logo}/duplicate', [
|
|
LogoController::class,
|
|
'duplicate'
|
|
])->name('logos.duplicate');
|
|
|
|
// * HISTORICAL MILESTONES.
|
|
Route::resource('historicalmilestones', HistoricalMilestoneController::class)->except('show')
|
|
->parameters(['historicalmilestones' => 'historical_milestone']);
|
|
Route::get('/historicalmilestones/{historical_milestone}/duplicate', [
|
|
HistoricalMilestoneController::class,
|
|
'duplicate'
|
|
])->name('historicalmilestones.duplicate');
|
|
|
|
// * SLIDES.
|
|
Route::resource('slides', SlideController::class)->except('show')
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware('htmlsanitize:content');
|
|
Route::get('/slides/{slide}/duplicate', [
|
|
SlideController::class,
|
|
'duplicate'
|
|
])->name('slides.duplicate');
|
|
|
|
// * STRIPS.
|
|
Route::resource('strips', StripController::class)->except('show')
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware('htmlsanitize:text');
|
|
Route::patch('/strips/{strip}/change-published', [
|
|
StripController::class,
|
|
'changePublished'
|
|
])->name('strips.change-published');
|
|
Route::get('/strips/{strip}/duplicate', [
|
|
StripController::class,
|
|
'duplicate'
|
|
])->name('strips.duplicate');
|
|
|
|
// * SECTIONS.
|
|
Route::resource('sections', SectionController::class)
|
|
->only(['index', 'edit', 'update'])
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware(['htmlsanitize:text,data']);
|
|
Route::get('sections/{section}/addpartpiece', [SectionController::class, 'addPartPiece'])
|
|
->name('sections.addpartpiece');
|
|
Route::get('sections/{section}/removepartpiece/{index}', [SectionController::class, 'removePartPiece'])
|
|
->where('index', '[0-9]+')
|
|
->name('sections.removepartpiece');
|
|
|
|
// * JOB VIDEOS.
|
|
Route::resource('jobvideos', JobVideoController::class)->except('show')
|
|
->parameters(['jobvideos' => 'job_video']);
|
|
Route::get('/jobvideos/{job_video}/duplicate', [
|
|
JobVideoController::class,
|
|
'duplicate'
|
|
])->name('jobvideos.duplicate');
|
|
|
|
// * TESTIMONIALS.
|
|
Route::resource('testimonials', TestimonialController::class)->except('show')
|
|
->withoutMiddleware('htmlsanitize')
|
|
->middleware('htmlsanitize:content');
|
|
Route::get('/testimonials/{testimonial}/duplicate', [
|
|
TestimonialController::class,
|
|
'duplicate'
|
|
])->name('testimonials.duplicate');
|
|
|
|
Route::middleware('can:isConceptor')->group(function () {
|
|
// * ACTIVITY LOGS.
|
|
Route::resource('activity_logs', ActivityLogController::class)->only(['index', 'show']);
|
|
});
|
|
|
|
// * UPLOAD (USED FOR CKEDITOR)
|
|
Route::post('/upload', [UploadController::class, 'uploadFile'])->name('ckeditor.upload');
|
|
});
|
|
// * Others routes
|
|
Route::post('theme/set', [Controller::class, 'setTheme'])->name('theme.set');
|
|
});
|