mirror of
https://github.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot.git
synced 2026-03-02 00:03:05 +00:00
Merge pull request #129 from Fr1ngg/codex/add-advertising-link-functionality-to-admin-eu5f3n
Refresh user state after campaign bonuses
This commit is contained in:
@@ -605,6 +605,24 @@ async def complete_registration_from_callback(
|
||||
|
||||
campaign_message = await _apply_campaign_bonus_if_needed(db, user, data, texts)
|
||||
|
||||
try:
|
||||
await db.refresh(user)
|
||||
except Exception as refresh_error:
|
||||
logger.error(
|
||||
"Ошибка обновления данных пользователя %s после бонуса кампании: %s",
|
||||
user.telegram_id,
|
||||
refresh_error,
|
||||
)
|
||||
|
||||
try:
|
||||
await db.refresh(user, ["subscription"])
|
||||
except Exception as refresh_subscription_error:
|
||||
logger.error(
|
||||
"Ошибка обновления подписки пользователя %s после бонуса кампании: %s",
|
||||
user.telegram_id,
|
||||
refresh_subscription_error,
|
||||
)
|
||||
|
||||
await state.clear()
|
||||
|
||||
if campaign_message:
|
||||
@@ -628,10 +646,10 @@ async def complete_registration_from_callback(
|
||||
else:
|
||||
logger.info(f"ℹ️ Приветственные сообщения отключены, показываем главное меню для пользователя {user.telegram_id}")
|
||||
|
||||
has_active_subscription = user.subscription is not None
|
||||
has_active_subscription = bool(getattr(user, "subscription", None))
|
||||
subscription_is_active = False
|
||||
|
||||
if user.subscription:
|
||||
|
||||
if getattr(user, "subscription", None):
|
||||
subscription_is_active = user.subscription.is_active
|
||||
|
||||
menu_text = await get_main_menu_text(user, texts, db)
|
||||
@@ -778,6 +796,24 @@ async def complete_registration(
|
||||
|
||||
campaign_message = await _apply_campaign_bonus_if_needed(db, user, data, texts)
|
||||
|
||||
try:
|
||||
await db.refresh(user)
|
||||
except Exception as refresh_error:
|
||||
logger.error(
|
||||
"Ошибка обновления данных пользователя %s после бонуса кампании: %s",
|
||||
user.telegram_id,
|
||||
refresh_error,
|
||||
)
|
||||
|
||||
try:
|
||||
await db.refresh(user, ["subscription"])
|
||||
except Exception as refresh_subscription_error:
|
||||
logger.error(
|
||||
"Ошибка обновления подписки пользователя %s после бонуса кампании: %s",
|
||||
user.telegram_id,
|
||||
refresh_subscription_error,
|
||||
)
|
||||
|
||||
await state.clear()
|
||||
|
||||
if campaign_message:
|
||||
@@ -801,10 +837,10 @@ async def complete_registration(
|
||||
else:
|
||||
logger.info(f"ℹ️ Приветственные сообщения отключены, показываем главное меню для пользователя {user.telegram_id}")
|
||||
|
||||
has_active_subscription = user.subscription is not None
|
||||
has_active_subscription = bool(getattr(user, "subscription", None))
|
||||
subscription_is_active = False
|
||||
|
||||
if user.subscription:
|
||||
|
||||
if getattr(user, "subscription", None):
|
||||
subscription_is_active = user.subscription.is_active
|
||||
|
||||
menu_text = await get_main_menu_text(user, texts, db)
|
||||
|
||||
Reference in New Issue
Block a user