From 4639020a8ed0a4187e2ec7adad9e0f843e2f9e2d Mon Sep 17 00:00:00 2001 From: yazhog Date: Tue, 16 Sep 2025 14:11:44 +0300 Subject: [PATCH] Conditionally register channel checker middleware --- app/bot.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/bot.py b/app/bot.py index 34230f9e..aaa30c53 100644 --- a/app/bot.py +++ b/app/bot.py @@ -5,7 +5,6 @@ from aiogram.fsm.storage.memory import MemoryStorage import redis.asyncio as redis from app.config import settings -from app.middlewares.channel_checker import ChannelCheckerMiddleware from app.middlewares.global_error import GlobalErrorMiddleware from app.middlewares.auth import AuthMiddleware from app.middlewares.logging import LoggingMiddleware @@ -87,8 +86,16 @@ async def setup_bot() -> tuple[Bot, Dispatcher]: dp.callback_query.middleware(MaintenanceMiddleware()) dp.message.middleware(ThrottlingMiddleware()) dp.callback_query.middleware(ThrottlingMiddleware()) - dp.message.middleware(ChannelCheckerMiddleware()) - dp.callback_query.middleware(ChannelCheckerMiddleware()) + + if settings.CHANNEL_IS_REQUIRED_SUB: + from app.middlewares.channel_checker import ChannelCheckerMiddleware + + channel_checker_middleware = ChannelCheckerMiddleware() + dp.message.middleware(channel_checker_middleware) + dp.callback_query.middleware(channel_checker_middleware) + logger.info("🔒 Обязательная подписка включена - ChannelCheckerMiddleware активирован") + else: + logger.info("🔓 Обязательная подписка отключена - ChannelCheckerMiddleware не зарегистрирован") dp.message.middleware(AuthMiddleware()) dp.callback_query.middleware(AuthMiddleware()) dp.pre_checkout_query.middleware(AuthMiddleware())