namespace App\Http\Middleware; use Closure; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; class AdminMiddleware { public function handle(Request $request, Closure $next) { if (!Auth::guard('admin')->check()) { return redirect()->route('admin.login'); } $admin = Auth::guard('admin')->user(); // Check if admin is active if (!$admin->isActive()) { Auth::guard('admin')->logout(); return redirect()->route('admin.login') ->with('error', 'Your account is inactive. Please contact super admin.'); } // Check IP whitelist if (!$admin->isIpAllowed($request->ip())) { Auth::guard('admin')->logout(); return redirect()->route('admin.login') ->with('error', 'Access denied from this IP address.'); } return $next($request); } }