From 505d060df23322b6b8a79989f74379078af64d55 Mon Sep 17 00:00:00 2001 From: Novy San87 Date: Thu, 6 Aug 2026 22:03:05 +0700 Subject: [PATCH] =?UTF-8?q?feat:=20Logout=20jarak=20jauh=20wali=20?= =?UTF-8?q?=E2=80=94=20cabut=20semua=20token=20Sanctum=20dari=20panel=20ad?= =?UTF-8?q?min,=20app=20langsung=20401=20=E2=86=92=20login=20ulang?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Controllers/Admin/WaliMuridController.php | 14 +++++++++ resources/views/parents/index.blade.php | 30 +++++++++++++++++++ routes/web.php | 1 + 3 files changed, 45 insertions(+) diff --git a/app/Http/Controllers/Admin/WaliMuridController.php b/app/Http/Controllers/Admin/WaliMuridController.php index 541a1cc..5e7848b 100644 --- a/app/Http/Controllers/Admin/WaliMuridController.php +++ b/app/Http/Controllers/Admin/WaliMuridController.php @@ -47,6 +47,20 @@ class WaliMuridController extends Controller return view('parents.index', compact('users', 'total', 'totalAktif', 'pending', 'baruMingguIni')); } + /** + * Logout jarak jauh: cabut semua token Sanctum akun wali + * → app di semua perangkat langsung 401 → otomatis kembali ke login. + */ + public function forceLogout(int $userId): RedirectResponse + { + $user = User::where('role', 'parent')->findOrFail($userId); + + $user->tokens()->delete(); + $user->forceFill(['active_session_token' => null])->save(); + + return back()->with('success', 'Semua perangkat akun "' . $user->name . '" telah di-logout dari jarak jauh.'); + } + /** * Hapus akun wali murid beserta tautan anak & perangkatnya. * Hanya akun role=parent yang boleh dihapus lewat sini. diff --git a/resources/views/parents/index.blade.php b/resources/views/parents/index.blade.php index ac82905..79f7c12 100644 --- a/resources/views/parents/index.blade.php +++ b/resources/views/parents/index.blade.php @@ -255,6 +255,11 @@
+