group(function () { Route::prefix('admin/master')->name('admin.master.')->group(function () { Route::resource('academic-terms', AcademicTermController::class)->except(['create', 'edit', 'show']); Route::resource('departments', DepartmentController::class)->except(['create', 'edit', 'show']); }); Route::prefix('admin/manage')->name('admin.manage.')->group(function () { Route::resource('courses', CourseController::class)->except(['create', 'edit', 'show']); Route::resource('course-classes', CourseClassController::class)->except(['create', 'edit', 'show']); Route::prefix('course-classes/{course_class}/enrollments')->name('course-classes.enrollments.')->group(function () { Route::get('/', [ClassEnrollmentController::class, 'index'])->name('index'); Route::post('/', [ClassEnrollmentController::class, 'store'])->name('store'); Route::delete('{enrollment}', [ClassEnrollmentController::class, 'destroy'])->name('destroy'); }); Route::resource('materials', MaterialController::class)->except(['create', 'edit', 'show']); }); Route::prefix('admin/users')->name('admin.users.')->group(function () { Route::resource('lecturers', LecturerController::class)->except(['show'])->parameters(['lecturers' => 'user']); Route::patch('lecturers/{user}/reset-password', [LecturerController::class, 'resetPassword'])->name('lecturers.reset_password'); Route::resource('students', StudentController::class)->except(['show'])->parameters(['students' => 'user']); Route::patch('students/{user}/reset-password', [StudentController::class, 'resetPassword'])->name('students.reset_password'); Route::resource('administrators', AdministratorController::class)->except(['show'])->parameters(['administrators' => 'user']); Route::patch('administrators/{user}/reset-password', [AdministratorController::class, 'resetPassword'])->name('administrators.reset_password'); }); });