route('login'); } $viewData = ['user' => $user]; // Menyiapkan data berdasarkan role pengguna if ($user->role === 'penjaga perpus') { // Data untuk Penjaga Perpus: Statistik global & aktivitas terkini $viewData['statistik'] = DummyDataService::getAdminDashboardStats(); $viewData['aktivitasTerakhir'] = DummyDataService::getAktivitasTerakhir(); } elseif ($user->role === 'guru') { // Data untuk Guru: Data personal + ringkasan laporan minat baca $viewData['bukuOffline'] = DummyDataService::getBukuPinjamOffline($user); $viewData['bukuOnline'] = DummyDataService::getBacaBukuOnline($user); $viewData['laporan'] = DummyDataService::getLaporanMinatBaca(); } else { // Data default untuk Siswa $viewData['bukuOffline'] = DummyDataService::getBukuPinjamOffline($user); $viewData['bukuOnline'] = DummyDataService::getBacaBukuOnline($user); $viewData['statistik'] = DummyDataService::getDashboardStats(); } return view('profile.index', $viewData); } /** * Menampilkan form untuk mengedit profil. */ public function edit(Request $request): View { return view('profile.edit', [ 'user' => $request->user(), ]); } /** * Memperbarui informasi profil pengguna. */ public function update(ProfileUpdateRequest $request): RedirectResponse { $request->user()->fill($request->validated()); if ($request->user()->isDirty('email')) { $request->user()->email_verified_at = null; } $request->user()->save(); return Redirect::route('profile.edit')->with('status', 'profile-updated'); } /** * Menghapus akun pengguna. */ public function destroy(Request $request): RedirectResponse { $request->validateWithBag('userDeletion', [ 'password' => ['required', 'current_password'], ]); $user = $request->user(); Auth::logout(); $user->delete(); $request->session()->invalidate(); $request->session()->regenerateToken(); return Redirect::to('/'); } }