'failure', 'error_code' => 'REGION_MISMATCH', 'message' => "Region mismatch: Request host '$requestHost' does not match server domain '$appDomain'." ])); } } require_once __DIR__ . '/functions.php'; // 1. Rate Limiting and JWT Authentication $limiter = new RateLimiter($redis); $limiter->enforce(RateLimiter::identifier(), 'api'); $jwtService = new JwtService($redis); $decoded = $jwtService->authenticate(); // متغيرات مساعدة للمطور $user_id = $decoded->user_id ?? null; $role = $decoded->role ?? 'passenger'; // 3. Database Connection try { $con = Database::get('main'); } catch (Exception $e) { http_response_code(500); exit(json_encode(['error' => 'Database connection failed'])); }