user(); if ($user->role->name === 'Admin') { return redirect()->route('admin.dashboard'); } elseif ($user->role->name === 'Coordinator') { return redirect()->route('coordinator.dashboard'); } elseif ($user->role->name === 'Faculty') { return redirect()->route('faculty.dashboard'); } else { return abort(403, 'Unauthorized'); } })->middleware(['auth', 'verified'])->name('dashboard'); Route::middleware('auth')->group(function () { Route::get('/profile', [ProfileController::class, 'edit'])->name('profile.edit'); Route::patch('/profile', [ProfileController::class, 'update'])->name('profile.update'); Route::delete('/profile', [ProfileController::class, 'destroy'])->name('profile.destroy'); }); // Admin routes Route::middleware(['auth', CheckRole::class . ':Admin'])->group(function () { Route::get('/admin', [AdminController::class, 'index'])->name('admin.dashboard'); Route::get('/admin/responses', [AdminController::class, 'viewResponses'])->name('admin.responses'); }); // Coordinator routes Route::middleware(['auth', CheckRole::class . ':Coordinator'])->group(function () { Route::get('/coordinator', [CoordinatorController::class, 'index'])->name('coordinator.dashboard'); Route::get('/coordinator/responses', [CoordinatorController::class, 'viewResponses'])->name('coordinator.responses'); }); // Faculty routes Route::middleware(['auth', CheckRole::class . ':Faculty'])->group(function () { Route::get('/faculty', [FacultyController::class, 'index'])->name('faculty.dashboard'); Route::get('/faculty/response-form', [FacultyController::class, 'responseForm'])->name('faculty.responseForm'); Route::post('/faculty/submit-response', [FacultyController::class, 'submitResponse'])->name('faculty.submitResponse'); }); // API Resources Route::apiResources([ 'roles' => RoleController::class, 'departments' => DepartmentController::class, 'users' => UserController::class, ]); require __DIR__ . '/auth.php';