Астат ты не вознесешься
This commit is contained in:
@@ -360,4 +360,5 @@ COMMANDS: Final[dict[str, list[str]]] = {
|
||||
"дщпы", "kjub", # раскладка
|
||||
"log", "l", "лог", # сокращения
|
||||
],
|
||||
"redactcomment": ["redactcomment", "editcomment", "комментарии", "redc"],
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ from urllib.parse import urlparse, ParseResult
|
||||
from typing import Optional, Any
|
||||
from secrets import token_urlsafe
|
||||
|
||||
from pydantic import field_validator, model_validator
|
||||
from pydantic import field_validator, model_validator, Field
|
||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||
from aiogram.types import ChatAdministratorRights
|
||||
|
||||
@@ -21,6 +21,7 @@ class _Settings(BaseSettings):
|
||||
# ============== ОСНОВНЫЕ ПАРАМЕТРЫ ==============
|
||||
# Токены бота
|
||||
BOT_TOKEN: Optional[str] = None
|
||||
DATABASE_PATH: Optional[str] = "data/banwords.db"
|
||||
|
||||
# Параметры сообщений
|
||||
PARSE_MODE: str = "HTML"
|
||||
@@ -61,6 +62,35 @@ class _Settings(BaseSettings):
|
||||
BOT_DESCRIPTION: Optional[str] = None
|
||||
BOT_SHORT_DESCRIPTION: Optional[str] = None
|
||||
|
||||
# ============ АВТОКОММЕНТАРИИ В КАНАЛЕ ============
|
||||
|
||||
AUTO_COMMENT_CHANNELS: str = Field(
|
||||
default="",
|
||||
description="ID каналов через запятую"
|
||||
)
|
||||
|
||||
AUTO_COMMENT_TEXT: str = Field(
|
||||
default="🔍 <b>Нужна помощь?</b>\n\nИспользуй наш сервис!",
|
||||
description="Текст по умолчанию (HTML)"
|
||||
)
|
||||
|
||||
AUTO_COMMENT_BUTTON_TEXT: str = Field(
|
||||
default="🌐 Искать в Google",
|
||||
description="Текст кнопки по умолчанию"
|
||||
)
|
||||
|
||||
AUTO_COMMENT_BUTTON_URL: str = Field(
|
||||
default="https://www.google.com",
|
||||
description="URL кнопки по умолчанию"
|
||||
)
|
||||
|
||||
AUTO_COMMENT_PHOTO_URL: str = Field(
|
||||
default="https://via.placeholder.com/800x600.png",
|
||||
description="URL фото по умолчанию"
|
||||
)
|
||||
|
||||
|
||||
|
||||
# Права администратора
|
||||
ANONYMOUS: bool = False
|
||||
MANAGE_CHAT: bool = True
|
||||
@@ -160,6 +190,25 @@ class _Settings(BaseSettings):
|
||||
return self
|
||||
|
||||
# ================= СВОЙСТВА =================
|
||||
@property
|
||||
def AUTO_COMMENT_CHANNELS_LIST(self) -> list[int]:
|
||||
"""Преобразует строку ID каналов в список"""
|
||||
if not self.AUTO_COMMENT_CHANNELS:
|
||||
return []
|
||||
|
||||
try:
|
||||
return [
|
||||
int(channel_id.strip())
|
||||
for channel_id in self.AUTO_COMMENT_CHANNELS.split(",")
|
||||
if channel_id.strip()
|
||||
]
|
||||
except ValueError:
|
||||
from middleware.loggers import logger # ✅ ДОБАВЬ ИМПОРТ
|
||||
logger.error(
|
||||
"Неверный формат AUTO_COMMENT_CHANNELS",
|
||||
log_type="CONFIG"
|
||||
)
|
||||
return []
|
||||
|
||||
@property
|
||||
def rights(self) -> ChatAdministratorRights:
|
||||
|
||||
Reference in New Issue
Block a user