name('auth.') ->controller(AuthController::class) ->group(function () { Route::post('register', 'register')->name('register'); Route::post('login', 'login')->name('login'); Route::post('logout', 'logout')->name('logout'); }); Route::prefix('documents') ->name('documents.') ->middleware('auth:expert') ->controller(DocumentationController::class) ->group(function () { Route::get('/', 'index')->name('index'); Route::post('confirm/{user}', 'confirm')->name('confirm'); Route::post('reject/{user}', 'reject')->name('reject'); Route::get('files/{user}', 'files')->name('files'); }); Route::prefix('user_management') ->middleware(['auth:expert', 'permission:user-management']) ->name('user_management.') ->controller(UserManagementController::class) ->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::get('/{user}', 'show')->name('show'); Route::post('/{user}', 'update')->name('update'); Route::delete('/{user}', 'destroy')->name('destroy'); }); Route::prefix('roles') ->name('roles.') ->middleware(['auth:expert', 'permission:role-management']) ->controller(RoleManagementController::class) ->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::get('/{role}', 'show')->name('show'); Route::post('/{role}', 'update')->name('update'); Route::delete('/{role}', 'destroy')->name('destroy'); }); Route::prefix('permissions') ->name('permissions.') ->middleware(['auth:expert', 'permission:permission-management']) ->controller(PermissionManagementController::class) ->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::get('/{permission}', 'show')->name('show'); Route::post('/{permission}', 'update')->name('update'); Route::delete('/{permission}', 'destroy')->name('destroy'); }); Route::prefix('expert') ->name('expert.') ->middleware(['auth:expert', 'permission:expert-management']) ->controller(ExpertManagementController::class) ->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::get('/{expert}', 'show')->name('show'); Route::post('/{expert}', 'update')->name('update'); Route::delete('/{expert}', 'destroy')->name('destroy'); }); Route::prefix('profile') ->name('profile.') ->middleware('auth') ->controller(ProfileController::class) ->group(function () { Route::get('info', 'info')->name('info'); Route::post('edit', 'edit')->name('edit'); Route::post('change_password', 'changePassword')->name('changePassword'); });