{{-- ============================================ --}} {{-- GLOBAL FLASH POPUP NOTIFICATION --}} {{-- Reusable: include in any layout / page --}} {{-- ============================================ --}} @php // Susun semua flash messages dari berbagai sumber $flashMessages = []; // Error - dari validation errors if($errors->any()){ $title = 'Validasi Gagal!'; $msg = $errors->first(); if($errors->has('login_as')){ $title = 'Role Tidak Sesuai!'; } elseif($errors->has('password')){ $title = 'Password Salah!'; } elseif($errors->has('email')){ $emailMsg = $errors->first('email'); if(stripos($emailMsg, 'attempts') !== false || stripos($emailMsg, 'second') !== false || stripos($emailMsg, 'menit') !== false || stripos($emailMsg, 'detik') !== false){ $title = 'Terlalu Banyak Percobaan!'; } elseif(stripos($emailMsg, 'credentials') !== false || stripos($emailMsg, 'tidak cocok') !== false || stripos($emailMsg, 'invalid') !== false || stripos($emailMsg, 'failed') !== false){ $title = 'Email atau Password Salah!'; $msg = 'Email atau password yang Anda masukkan tidak cocok.'; } else { $title = 'Login Gagal!'; } } $flashMessages[] = ['type' => 'error', 'title' => $title, 'message' => $msg]; } // Error dari session if(session('error')){ $flashMessages[] = ['type' => 'error', 'title' => 'Terjadi Kesalahan!', 'message' => session('error')]; } // Success if(session('success')){ $flashMessages[] = ['type' => 'success', 'title' => 'Berhasil!', 'message' => session('success')]; } // Status (Laravel default) if(session('status') && !in_array(session('status'), ['verification-link-sent', 'profile-updated', 'password-updated'])){ $flashMessages[] = ['type' => 'success', 'title' => 'Berhasil!', 'message' => session('status')]; } // Warning if(session('warning')){ $flashMessages[] = ['type' => 'warning', 'title' => 'Peringatan!', 'message' => session('warning')]; } // Info if(session('info')){ $flashMessages[] = ['type' => 'info', 'title' => 'Informasi', 'message' => session('info')]; } @endphp @if(count($flashMessages) > 0)
{{ $flash['title'] }}
{{ $flash['message'] }}