1.2 Вроде все готово

This commit is contained in:
Verum
2025-02-24 00:54:00 +07:00
parent 410b8eff59
commit 61241a2cf4
17 changed files with 385 additions and 171 deletions

View File

@@ -2,15 +2,23 @@
# Создание валидации почты для проекта
from email_validator import validate_email, EmailNotValidError
from typing import Optional
# Настройка экспорта из этого модуля
__all__ = ("valid_email",)
# Функция проверки почты на корректность
def valid_email(text: str) -> str | None:
def valid_email(text: str) -> Optional[str]:
"""
Проверяет корректность почтового адреса.
:param text: Почтовый адрес в виде строки.
:return: Нормализованный почтовый адрес, если он валиден, иначе None.
"""
try:
# Проверка и нормализация email
email = validate_email(text)
return email.normalized
except EmailNotValidError:
# Если email невалиден, можно добавить логирование или обработку ошибок
return None
return email.normalized

View File

@@ -1,11 +1,19 @@
# BotLibrary/validators/username.py
# Получение юзера пользователя
# Получение юзера или ID пользователя
from aiogram.types import message
from aiogram.types import Message
# Настройка экспорта из модуля
__all__ = ("username",)
# Функция получения юзера или id пользователя
def username(message: message.Message):
return f"@{message.from_user.username or message.from_user.id}"
# Функция получения юзера или ID пользователя
def username(message: Message) -> str:
"""
Возвращает юзернейм пользователя из сообщения, или ID, если юзернейм не указан.
:param message: Объект сообщения из aiogram.
:return: Строка с юзернеймом пользователя или его ID.
"""
if message.from_user:
return f"@{message.from_user.username}" if message.from_user.username else str(message.from_user.id)
return "@Unknown_User" # Если from_user отсутствует