From ca9a97cac58e9a96b1f0db7a176b9e2f4aa15a14 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=94=D0=B5=D0=BD=D0=B8=D1=81=20=D0=9A=D1=80=D0=B8=D0=B2?= =?UTF-8?q?=D0=BE=D1=87=D0=B5=D0=BD=D0=BA=D0=BE?= Date: Tue, 21 Jul 2026 15:16:43 +0700 Subject: [PATCH] fix: add 0 handler to instruct_main_handler for return to main menu --- instruct/handlers.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/instruct/handlers.py b/instruct/handlers.py index 1a4eaa3..11db0cb 100644 --- a/instruct/handlers.py +++ b/instruct/handlers.py @@ -48,11 +48,26 @@ instruct_sessions = {} # ОБРАБОТЧИКИ # ======================================== -@router.message() +@router.message("0") async def instruct_main_handler(msg: Message): """Обработчик главного меню модуля Instruct.""" user_id = msg.from_user.id + if get_state(user_id) != "INSTRUCT_MODE": + return + + # Цифра 0 — возврат в главное меню + clear_state(user_id) + setattr(msg, "handled", True) + await msg.answer(MENU_TEXT, parse_mode="html") + instruct_logger.info(f"User {user_id} returned to main menu via 0") + return + +@router.message() +async def instruct_main_menu_handler(msg: Message): + """Обработчик открытия меню инструкций.""" + user_id = msg.from_user.id + if get_state(user_id) != "INSTRUCT_MODE": return