diff --git a/app/handlers/balance/main.py b/app/handlers/balance/main.py index 72669dd6..3d50943c 100644 --- a/app/handlers/balance/main.py +++ b/app/handlers/balance/main.py @@ -94,15 +94,38 @@ async def show_balance_menu( db: AsyncSession ): texts = get_texts(db_user.language) - + balance_text = texts.BALANCE_INFO.format( balance=texts.format_price(db_user.balance_kopeks) ) - - await callback.message.edit_text( - balance_text, - reply_markup=get_balance_keyboard(db_user.language) - ) + + reply_markup = get_balance_keyboard(db_user.language) + + try: + if callback.message and callback.message.text: + await callback.message.edit_text( + balance_text, + reply_markup=reply_markup + ) + elif callback.message and callback.message.caption: + await callback.message.edit_caption( + balance_text, + reply_markup=reply_markup + ) + else: + await callback.message.answer( + balance_text, + reply_markup=reply_markup + ) + except TelegramBadRequest as error: + logger.warning( + "Failed to edit balance message, sending a new one instead: %s", + error, + ) + await callback.message.answer( + balance_text, + reply_markup=reply_markup + ) await callback.answer() diff --git a/app/localization/locales/en.json b/app/localization/locales/en.json index ecb1e887..ab1b9dcd 100644 --- a/app/localization/locales/en.json +++ b/app/localization/locales/en.json @@ -1087,6 +1087,8 @@ "PAYMENT_METHOD_SUPPORT_NAME": "🛠️ Support team", "PAYMENT_METHOD_TRIBUTE_DESCRIPTION": "via Tribute", "PAYMENT_METHOD_TRIBUTE_NAME": "💳 Bank card", + "PAYMENT_METHOD_HELEKET_DESCRIPTION": "via Heleket", + "PAYMENT_METHOD_HELEKET_NAME": "🪙 Cryptocurrency (Heleket)", "PAYMENT_METHOD_YOOKASSA_DESCRIPTION": "via YooKassa", "PAYMENT_METHOD_YOOKASSA_NAME": "💳 Bank card", "PAYMENT_METHOD_YOOKASSA_SBP_DESCRIPTION": "via YooKassa Fast Payment System", diff --git a/app/localization/locales/ru.json b/app/localization/locales/ru.json index 87aa2c67..5a24611e 100644 --- a/app/localization/locales/ru.json +++ b/app/localization/locales/ru.json @@ -1099,6 +1099,8 @@ "PAYMENT_METHOD_SUPPORT_NAME": "🛠️ Через поддержку", "PAYMENT_METHOD_TRIBUTE_DESCRIPTION": "через Tribute", "PAYMENT_METHOD_TRIBUTE_NAME": "💳 Банковская карта", + "PAYMENT_METHOD_HELEKET_DESCRIPTION": "через Heleket", + "PAYMENT_METHOD_HELEKET_NAME": "🪙 Криптовалюта (Heleket)", "PAYMENT_METHOD_YOOKASSA_DESCRIPTION": "через YooKassa", "PAYMENT_METHOD_YOOKASSA_NAME": "💳 Банковская карта", "PAYMENT_METHOD_YOOKASSA_SBP_DESCRIPTION": "через систему быстрых платежей YooKassa", diff --git a/app/localization/locales/ua.json b/app/localization/locales/ua.json index d291f56a..2a419cc2 100644 --- a/app/localization/locales/ua.json +++ b/app/localization/locales/ua.json @@ -1093,10 +1093,12 @@ "PAYMENT_METHOD_PLATEGA_NAME": "💳 Банківська картка (Platega)", "PAYMENT_METHOD_STARS_DESCRIPTION": "швидко та зручно", "PAYMENT_METHOD_STARS_NAME": "⭐ Telegram Stars", - "PAYMENT_METHOD_SUPPORT_DESCRIPTION": "інші способи", - "PAYMENT_METHOD_SUPPORT_NAME": "🛠️ Через підтримку", +"PAYMENT_METHOD_SUPPORT_DESCRIPTION": "інші способи", +"PAYMENT_METHOD_SUPPORT_NAME": "🛠️ Через підтримку", "PAYMENT_METHOD_TRIBUTE_DESCRIPTION": "через Tribute", "PAYMENT_METHOD_TRIBUTE_NAME": "💳 Банківська картка", +"PAYMENT_METHOD_HELEKET_DESCRIPTION": "через Heleket", +"PAYMENT_METHOD_HELEKET_NAME": "🪙 Криптовалюта (Heleket)", "PAYMENT_METHOD_YOOKASSA_DESCRIPTION": "через YooKassa", "PAYMENT_METHOD_YOOKASSA_NAME": "💳 Банківська картка", "PAYMENT_METHOD_YOOKASSA_SBP_DESCRIPTION": "через систему швидких платежів YooKassa", diff --git a/app/localization/locales/zh.json b/app/localization/locales/zh.json index d6c32b4e..235a9b97 100644 --- a/app/localization/locales/zh.json +++ b/app/localization/locales/zh.json @@ -1096,6 +1096,8 @@ "PAYMENT_METHOD_SUPPORT_NAME":"🛠️通过支持", "PAYMENT_METHOD_TRIBUTE_DESCRIPTION":"通过Tribute", "PAYMENT_METHOD_TRIBUTE_NAME":"💳银行卡", +"PAYMENT_METHOD_HELEKET_DESCRIPTION":"通过Heleket", +"PAYMENT_METHOD_HELEKET_NAME":"🪙加密货币(Heleket)", "PAYMENT_METHOD_YOOKASSA_DESCRIPTION":"通过YooKassa", "PAYMENT_METHOD_YOOKASSA_NAME":"💳银行卡", "PAYMENT_METHOD_YOOKASSA_SBP_DESCRIPTION":"通过YooKassa快速支付系统",