Enhance promo code management and user statistics features

- Introduced a unified promo code management system, allowing admins to view and manage both active and inactive promo codes with detailed information.
- Updated the promo code detail view to include status indicators and management options for editing, toggling status, and viewing activation history.
- Enhanced user statistics display by restructuring the information layout and adding new labels for clarity.
- Improved localization files to support new messages and labels related to promo code management and user statistics.
- Implemented error handling for suspicious promo code attempts, integrating a notification system for better admin awareness.
This commit is contained in:
machka-pasla
2025-08-03 21:09:03 +03:00
parent aa97618165
commit a5b408d204
11 changed files with 442 additions and 108 deletions
+1 -10
View File
@@ -11,7 +11,7 @@ from db.models import PromoCode, User
from .subscription_service import SubscriptionService
from bot.middlewares.i18n import JsonI18n
from .notification_service import notify_admin_promo_activation, NotificationService
from .notification_service import NotificationService
class PromoCodeService:
@@ -75,15 +75,6 @@ class PromoCodeService:
except Exception as e:
logging.error(f"Failed to send promo activation notification: {e}")
# Legacy notification for backwards compatibility
await notify_admin_promo_activation(
self.bot,
self.settings,
self.i18n,
user_id,
code_input_upper,
bonus_days,
)
return True, new_end_date
else: