Фото: запрет приёма фото при «на модерации»; неверная команда — «Неизвестная команда» (UNKNOWN_MAIN_CMD_TEXT) во всём модуле

This commit is contained in:
dddennnisss
2026-08-22 16:05:08 +07:00
parent 859ac42a77
commit ab58203982
2 changed files with 18 additions and 5 deletions
+18 -5
View File
@@ -17,9 +17,9 @@ from utils.menu import MENU_TEXT
from photo_bot.photo_processor import prepare_ad_photo, get_crop_coordinates
from photo_bot.ai_validator import validate_photo_with_ai
from utils.texts import (
UNKNOWN_MAIN_CMD_TEXT,
EMOJI_DIGITS,
PHOTO_MAIN_MENU_TEXT,
system_error_text,
photo_error_handling,
PHOTO_PROCESSING_FACE_TEXT,
PHOTO_AI_PROCESSING_TEXT,
@@ -275,7 +275,7 @@ async def photo_module_handler(msg: Message):
await msg.answer(PHOTO_TEST_WELCOME_TEXT, parse_mode="html")
else:
# Неверная команда → глобальное сообщение
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
await msg.answer(UNKNOWN_MAIN_CMD_TEXT, parse_mode="html")
return
# Статус изменился (одобрено/отклонено) — разблокируем
was_in_test = in_test_submode(user_id)
@@ -365,7 +365,7 @@ async def photo_module_handler(msg: Message):
# --- Неверная команда при висящем превью → глобальное сообщение ---
else:
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
await msg.answer(UNKNOWN_MAIN_CMD_TEXT, parse_mode="html")
return
# --- ПОДТВЕРЖДЕНИЕ ОТПРАВКИ (Кнопка 1) ---
@@ -431,14 +431,27 @@ async def photo_module_handler(msg: Message):
# --- ИСПРАВЛЕНО: Защита от мусорного ввода при висящем превью ---
else:
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
await msg.answer(UNKNOWN_MAIN_CMD_TEXT, parse_mode="html")
return
# --- НЕВЕРНАЯ КОМАНДА (висящего фото нет) → глобальное сообщение ---
if not is_attachment:
await msg.answer(system_error_text(EMOJI_DIGITS), parse_mode="html")
await msg.answer(UNKNOWN_MAIN_CMD_TEXT, parse_mode="html")
return
# --- ФОТО НА МОДЕРАЦИИ: в обычном режиме новое фото не принимается ---
if is_attachment and not in_test_submode(user_id) and user_id in moderation_pending_users:
status = await check_moderation_status(user_id)
if status.get("status") == "ok" and status.get("moderation_status") == "pending":
log_menu_stats(user_id, "Photo Bot", "Отказ в приёме фото — есть фото на модерации")
await msg.answer(
photo_welcome_with_status(status, show_test=config.PHOTO_TEST_MODE),
parse_mode="html"
)
return
# Статус изменился (одобрено/отклонено) — снимаем блок, фото принимается штатно
moderation_pending_users.discard(user_id)
# --- ПРИЕМ НОВОГО ФОТО ---
if is_attachment:
file_id = getattr(msg.content, "file_id", None)