From 067fac77288b9129eefb2f662cbd8c6106faa031 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Wed, 20 Nov 2024 14:55:08 +0700 Subject: [PATCH] feat : autentikasi login --- .../Admin/Auth/LoginController.php | 35 ++++++++++++++----- app/Http/Requests/Auth/LoginRequest.php | 6 ++-- 2 files changed, 30 insertions(+), 11 deletions(-) diff --git a/app/Http/Controllers/Admin/Auth/LoginController.php b/app/Http/Controllers/Admin/Auth/LoginController.php index 7e7b05b..2628d38 100644 --- a/app/Http/Controllers/Admin/Auth/LoginController.php +++ b/app/Http/Controllers/Admin/Auth/LoginController.php @@ -12,6 +12,10 @@ class LoginController extends Controller { public function index(): View { + if (Auth::check()) { + return redirect()->route('admin.overview'); + } + return view('pages.auth.login', [ 'pageTitle' => 'Masuk Akun', 'metaDesc' => 'Masuk akun untuk mengakses admin panel', @@ -28,16 +32,31 @@ public function auth(LoginRequest $request): RedirectResponse 'password' => $validatedData['password'], ])) { $user = Auth::user(); - if ($user->is_active == 1) { - notify()->success("Selamat datang ' . $user->full_name", 'Berhasil'); + if ($user->is_active) { + notify()->success("Selamat datang, {$user->biography->full_name}!", 'Berhasil'); - return redirect('dashboard/overview'); - } else { - Auth::logout(); - notify()->success('Akun Anda saat ini tidak aktif. Silakan hubungi administrator untuk informasi lebih lanjut', 'Berhasil'); - - return redirect('auth/login'); + return redirect()->route('dashboard.overview'); } + + Auth::logout(); + notify()->info('Akun Anda saat ini tidak aktif. Silakan hubungi administrator untuk informasi lebih lanjut', 'Informasi'); + + return redirect()->route('auth.login'); } + + notify()->warning('Pastikan email / nama pengguna dan kata sandi yang Anda masukkan benar', 'Gagal'); + + return redirect()->route('auth.login'); + } + + public function logout(): RedirectResponse + { + Auth::logout(); + + request()->session()->invalidate(); + + request()->session()->regenerateToken(); + + return redirect('auth/login'); } } diff --git a/app/Http/Requests/Auth/LoginRequest.php b/app/Http/Requests/Auth/LoginRequest.php index 5de07fc..5541a05 100644 --- a/app/Http/Requests/Auth/LoginRequest.php +++ b/app/Http/Requests/Auth/LoginRequest.php @@ -18,9 +18,9 @@ public function authorize(): bool public function rules(): array { return [ - 'login' => ['required', 'string', 'email'], - 'password' => ['required', 'string'], - 'g-recaptcha-response' => 'recaptcha', + 'login' => 'required|string|max:255', + 'password' => 'required|string|min:8|max:60', + // 'g-recaptcha-response' => 'recaptcha', ]; }