Merge pull request #193 from Capybara-z/patch-5

fix name month
This commit is contained in:
Vladislav Lisitsyn
2025-05-01 20:38:06 +03:00
committed by GitHub
2 changed files with 33 additions and 1 deletions
+2 -1
View File
@@ -52,6 +52,7 @@ from handlers.utils import (
format_days,
format_hours,
format_minutes,
get_russian_month,
handle_error,
is_full_remnawave_cluster,
)
@@ -231,7 +232,7 @@ async def process_callback_view_key(callback_query: CallbackQuery, session: Any)
f"Осталось: <b>{format_days(days)}</b>, <b>{format_hours(hours)}</b>, <b>{format_minutes(minutes)}</b>"
)
formatted_expiry_date = expiry_date.strftime("%d %B %Y года")
formatted_expiry_date = f"{expiry_date.strftime('%d')} {get_russian_month(expiry_date)} {expiry_date.strftime('%Y')} года"
response_message = key_message(
final_link,
formatted_expiry_date,
+31
View File
@@ -10,6 +10,7 @@ import asyncpg
from aiogram.types import BufferedInputFile, InlineKeyboardMarkup, InputMediaPhoto, Message
from datetime import datetime
from bot import bot
from config import ADMIN_ID, DATABASE_URL
from database import get_all_keys, get_servers
@@ -256,3 +257,33 @@ def sanitize_key_name(key_name: str) -> str:
str: Очищенное название ключа в нижнем регистре.
"""
return re.sub(r"[^a-z0-9@._-]", "", key_name.lower())
RUSSIAN_MONTHS = {
'January': 'Января',
'February': 'Февраля',
'March': 'Марта',
'April': 'Апреля',
'May': 'Мая',
'June': 'Июня',
'July': 'Июля',
'August': 'Августа',
'September': 'Сентября',
'October': 'Октября',
'November': 'Ноября',
'December': 'Декабря'
}
def get_russian_month(date: datetime) -> str:
"""
Преобразует английское название месяца в русское.
Args:
date: Объект datetime, из которого извлекается месяц.
Returns:
Название месяца на русском языке.
"""
english_month = date.strftime("%B")
return RUSSIAN_MONTHS.get(english_month, english_month)