fix: return from bot tariff prices to bot menu

This commit is contained in:
3252a8
2026-06-08 09:22:24 +03:00
parent 2697c30c0f
commit a99aeec0d4
3 changed files with 13 additions and 4 deletions
@@ -22,7 +22,7 @@ from bot.keyboards.inline.user_keyboards import (
get_tariff_packages_keyboard, get_tariff_packages_keyboard,
get_tariff_periods_keyboard, get_tariff_periods_keyboard,
sale_mode_with_callback_context, sale_mode_with_callback_context,
subscription_options_callback, tariff_purchase_back_callback,
) )
from bot.middlewares.i18n import JsonI18n from bot.middlewares.i18n import JsonI18n
from bot.services.panel_api_service import PanelApiService from bot.services.panel_api_service import PanelApiService
@@ -303,7 +303,7 @@ async def select_tariff_callback(
current_lang, current_lang,
i18n, i18n,
settings, settings,
back_callback=subscription_options_callback(callback_context), back_callback=tariff_purchase_back_callback(callback_context),
callback_context=callback_context, callback_context=callback_context,
) )
text = _tariff_purchase_text(tariff, current_lang, i18n, settings) text = _tariff_purchase_text(tariff, current_lang, i18n, settings)
@@ -71,6 +71,12 @@ def subscription_options_callback(context: Optional[str]) -> str:
return "main_action:bot_subscribe" if context == BOT_MENU_CONTEXT else "main_action:subscribe" return "main_action:bot_subscribe" if context == BOT_MENU_CONTEXT else "main_action:subscribe"
def tariff_purchase_back_callback(context: Optional[str]) -> str:
if context == BOT_MENU_CONTEXT:
return "main_action:bot_interface"
return subscription_options_callback(context)
def payment_methods_back_callback( def payment_methods_back_callback(
value: str, sale_mode: str = "subscription", price: Optional[float] = None value: str, sale_mode: str = "subscription", price: Optional[float] = None
) -> str: ) -> str:
+5 -2
View File
@@ -23,6 +23,7 @@ from bot.keyboards.inline.user_keyboards import (
get_yk_autopay_choice_keyboard, get_yk_autopay_choice_keyboard,
payment_methods_back_callback, payment_methods_back_callback,
payment_options_back_callback, payment_options_back_callback,
tariff_purchase_back_callback,
) )
from bot.middlewares.i18n import LOCALE_KEY_ALIASES from bot.middlewares.i18n import LOCALE_KEY_ALIASES
from config.tariffs_config import TariffsConfig from config.tariffs_config import TariffsConfig
@@ -332,14 +333,16 @@ class UserBotMenuTests(unittest.TestCase):
"en", "en",
self.i18n, self.i18n,
settings, settings,
back_callback="main_action:bot_subscribe", back_callback=tariff_purchase_back_callback("bot"),
callback_context="bot", callback_context="bot",
) )
self.assertIn("tariff:select:basic:bot", self._callback_data(catalog)) self.assertIn("tariff:select:basic:bot", self._callback_data(catalog))
self.assertIn("main_action:bot_interface", self._callback_data(catalog)) self.assertIn("main_action:bot_interface", self._callback_data(catalog))
self.assertIn("tariff:period:basic:1:bot", self._callback_data(periods)) self.assertIn("tariff:period:basic:1:bot", self._callback_data(periods))
self.assertIn("main_action:bot_subscribe", self._callback_data(periods)) self.assertIn("main_action:bot_interface", self._callback_data(periods))
self.assertEqual(tariff_purchase_back_callback("bot"), "main_action:bot_interface")
self.assertEqual(tariff_purchase_back_callback(None), "main_action:subscribe")
self.assertEqual( self.assertEqual(
payment_options_back_callback("subscription@basic|bot"), payment_options_back_callback("subscription@basic|bot"),
"tariff:select:basic:bot", "tariff:select:basic:bot",