fix: return from bot tariff prices to bot menu
This commit is contained in:
@@ -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:
|
||||||
|
|||||||
@@ -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",
|
||||||
|
|||||||
Reference in New Issue
Block a user