From e226ac863717a5bc923a99ec0e2a15b487ac06d0 Mon Sep 17 00:00:00 2001 From: Fringg Date: Wed, 15 Apr 2026 04:03:18 +0300 Subject: [PATCH] feat: add DISPLAY_NAME_RESTRICTION_ENABLED toggle Allows disabling the display name restriction middleware via .env. Users with special characters in their Telegram name (e.g. "@") were blocked from using the bot entirely. Default: true (enabled). Set DISPLAY_NAME_RESTRICTION_ENABLED=false to disable. --- app/config.py | 1 + app/middlewares/display_name_restriction.py | 3 +++ 2 files changed, 4 insertions(+) diff --git a/app/config.py b/app/config.py index 9f47272e..37433789 100644 --- a/app/config.py +++ b/app/config.py @@ -436,6 +436,7 @@ class Settings(BaseSettings): MULENPAY_LANGUAGE: str = 'ru' MULENPAY_VAT_CODE: int = 0 + DISPLAY_NAME_RESTRICTION_ENABLED: bool = True DISPLAY_NAME_BANNED_KEYWORDS: str = '\n'.join(DEFAULT_DISPLAY_NAME_BANNED_KEYWORDS) MULENPAY_PAYMENT_SUBJECT: int = 4 MULENPAY_PAYMENT_MODE: int = 4 diff --git a/app/middlewares/display_name_restriction.py b/app/middlewares/display_name_restriction.py index 99e61907..d9a432df 100644 --- a/app/middlewares/display_name_restriction.py +++ b/app/middlewares/display_name_restriction.py @@ -85,6 +85,9 @@ class DisplayNameRestrictionMiddleware(BaseMiddleware): if not user or user.is_bot: return await handler(event, data) + if not settings.DISPLAY_NAME_RESTRICTION_ENABLED: + return await handler(event, data) + display_name = self._build_display_name(user) username = user.username or ''