From c424c41048bc16041c971b911ac257acc198afa0 Mon Sep 17 00:00:00 2001 From: Capybara-z Date: Fri, 19 Sep 2025 12:13:04 +0300 Subject: [PATCH] extend hooks for key creation --- handlers/keys/key_mode/key_cluster_mode.py | 12 ++++++++++++ handlers/keys/key_mode/key_country_mode.py | 12 ++++++++++++ 2 files changed, 24 insertions(+) diff --git a/handlers/keys/key_mode/key_cluster_mode.py b/handlers/keys/key_mode/key_cluster_mode.py index a77703e9..114a6bae 100644 --- a/handlers/keys/key_mode/key_cluster_mode.py +++ b/handlers/keys/key_mode/key_cluster_mode.py @@ -177,6 +177,18 @@ async def key_cluster_mode( builder.row(InlineKeyboardButton(text=SUPPORT, url=SUPPORT_CHAT_URL)) builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile")) + try: + intercept_results = await run_hooks( + "intercept_key_creation_message", + chat_id=tg_id, + session=session, + target_message=target_message + ) + if intercept_results and intercept_results[0]: + return + except Exception as e: + logger.warning(f"[INTERCEPT_KEY_CREATION] Ошибка при применении хуков: {e}") + try: hook_commands = await run_hooks( "key_creation_complete", chat_id=tg_id, admin=False, session=session, email=email, key_name=key_name diff --git a/handlers/keys/key_mode/key_country_mode.py b/handlers/keys/key_mode/key_country_mode.py index c9f91801..6ab957ff 100644 --- a/handlers/keys/key_mode/key_country_mode.py +++ b/handlers/keys/key_mode/key_country_mode.py @@ -519,6 +519,18 @@ async def finalize_key_creation( builder.row(InlineKeyboardButton(text=SUPPORT, url=SUPPORT_CHAT_URL)) builder.row(InlineKeyboardButton(text=MAIN_MENU, callback_data="profile")) + try: + intercept_results = await run_hooks( + "intercept_key_creation_message", + chat_id=tg_id, + session=session, + target_message=callback_query.message + ) + if intercept_results and intercept_results[0]: + return + except Exception as e: + logger.warning(f"[INTERCEPT_KEY_CREATION] Ошибка при применении хуков: {e}") + try: hook_commands = await run_hooks( "key_creation_complete", chat_id=tg_id, admin=False, session=session, email=email, key_name=key_name