const VERIFIED_BADGES = ['gold', 'green', 'blue'] // کاربر با تیک طلایی/سبز/آبی «وریفای‌شده» حساب می‌شه — محتواش نیازی به تاییدِ // دستیِ پنل نداره و مستقیم توی اپ/وب نمایش داده می‌شه function isVerifiedBadge (badge) { return VERIFIED_BADGES.includes(badge) } function computeVerifyBadge ({ is_verified, license_verified, gold_badge }) { // تیک طلایی فقط زمانی نمایش داده می‌شه که کاربر از قبل مدارک هویتش (تیک آبی) // هم تایید شده باشه — وگرنه فعال بودنِ gold_badge (مثلاً به‌اشتباه یا قبل از // تایید مدارک) نباید تیک آبیِ تازه‌تاییدشده رو بپوشونه if (gold_badge && is_verified === 'verified') return 'gold' if (license_verified) return 'green' if (is_verified === 'verified') return 'blue' if (is_verified === 'pending') return 'gray' return 'none' } function syncVerifyBadge (userDoc) { userDoc.verify_badge = computeVerifyBadge({ is_verified: userDoc.is_verified, license_verified: userDoc.license_verified, gold_badge: userDoc.gold_badge }) return userDoc.verify_badge } module.exports = { computeVerifyBadge, syncVerifyBadge, isVerifiedBadge, VERIFIED_BADGES }