some fix
This commit is contained in:
@@ -17,10 +17,9 @@ from helper_bot.middlewares.blacklist_middleware import BlacklistMiddleware
|
||||
from helper_bot.utils import messages
|
||||
from helper_bot.utils.base_dependency_factory import BaseDependencyFactory
|
||||
from helper_bot.utils.helper_func import get_first_name, get_text_message, send_text_message, send_photo_message, \
|
||||
send_media_group_message, process_photo_album, check_username_and_full_name
|
||||
send_media_group_message_to_private_chat, prepare_media_group_from_middlewares, check_username_and_full_name
|
||||
from logs.custom_logger import logger
|
||||
|
||||
|
||||
private_router = Router()
|
||||
|
||||
private_router.message.middleware(AlbumMiddleware())
|
||||
@@ -65,8 +64,10 @@ async def handle_start_message(message: types.Message, state: FSMContext):
|
||||
is_need_update = check_username_and_full_name(user_id, username, full_name)
|
||||
if is_need_update:
|
||||
BotDB.update_username_and_full_name(user_id, username, full_name)
|
||||
await message.answer(f"Давно не виделись! Вижу что ты изменился;) Теперь буду звать тебя: {full_name} и ник @{username}")
|
||||
await message.bot.send_message(chat_id=GROUP_FOR_LOGS, text=f'Для пользователя: {user_id} обновлены данные в БД.\nНовое имя: {full_name}\nНовый ник:{username}')
|
||||
await message.answer(
|
||||
f"Давно не виделись! Вижу что ты изменился;) Теперь буду звать тебя: {full_name} и ник @{username}")
|
||||
await message.bot.send_message(chat_id=GROUP_FOR_LOGS,
|
||||
text=f'Для пользователя: {user_id} обновлены данные в БД.\nНовое имя: {full_name}\nНовый ник:{username}')
|
||||
sleep(1)
|
||||
BotDB.update_date_for_user(date, user_id)
|
||||
await state.set_state("START")
|
||||
@@ -161,57 +162,63 @@ async def suggest_router(message: types.Message, state: FSMContext, album: list
|
||||
try:
|
||||
if message.content_type == 'text':
|
||||
lower_text = message.text.lower()
|
||||
post_text, is_anonymous = get_text_message(lower_text, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
post_text = get_text_message(lower_text, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
|
||||
# Получаем клавиатуру для поста
|
||||
markup = get_reply_keyboard_for_post()
|
||||
if is_anonymous:
|
||||
await send_text_message(GROUP_FOR_POST, message, post_text, markup)
|
||||
else:
|
||||
await send_text_message(GROUP_FOR_POST, message, post_text, markup)
|
||||
|
||||
# Отправляем сообщение в приватный канал
|
||||
await send_text_message(GROUP_FOR_POST, message, post_text, markup)
|
||||
|
||||
# Отправляем юзеру ответ, что сообщение отравлено и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.content_type == 'photo' and message.media_group_id is None:
|
||||
lower_caption = message.caption.lower()
|
||||
markup = get_reply_keyboard_for_post()
|
||||
post_caption, is_anonymous = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
#TODO: тут какая-то шляпа
|
||||
if is_anonymous:
|
||||
await send_photo_message(GROUP_FOR_POST, message,
|
||||
message.photo[-1].file_id, post_caption, markup)
|
||||
else:
|
||||
await send_photo_message(GROUP_FOR_POST, message,
|
||||
message.photo[-1].file_id, post_caption, markup)
|
||||
# Получаем текст сообщения и преобразовываем его по правилам
|
||||
post_caption = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
|
||||
# Отправляем фото и текст в приватный канал
|
||||
await send_photo_message(GROUP_FOR_POST, message,
|
||||
message.photo[-1].file_id, post_caption, markup)
|
||||
|
||||
# Отправляем юзеру ответ и возвращаем его в меню
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
await state.set_state("START")
|
||||
|
||||
elif message.media_group_id is not None:
|
||||
post_caption = " "
|
||||
|
||||
# Получаем сообщение и проверяем есть ли подпись. Если подпись есть, то преобразуем ее через функцию
|
||||
if album[0].caption:
|
||||
lower_caption = album[0].caption.lower()
|
||||
post_caption, is_anonymous = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
post_caption = get_text_message(lower_caption, message.from_user.full_name,
|
||||
message.from_user.username)
|
||||
|
||||
#Иначе обрабатываем фото и получаем медиагруппу
|
||||
media_group = await process_photo_album(album, post_caption)
|
||||
# Иначе обрабатываем фото и получаем медиагруппу
|
||||
media_group = await prepare_media_group_from_middlewares(album, post_caption)
|
||||
|
||||
#Отправляем медиагруппу в секретный чат
|
||||
media_group_message_id = await send_media_group_message(GROUP_FOR_POST, message, media_group)
|
||||
# Отправляем медиагруппу в секретный чат
|
||||
media_group_message_id = await send_media_group_message_to_private_chat(GROUP_FOR_POST, message, media_group)
|
||||
sleep(0.2)
|
||||
|
||||
#Получаем клавиатуру и отправляем еще одно текстовое сообщение с кнопками
|
||||
# Получаем клавиатуру и отправляем еще одно текстовое сообщение с кнопками
|
||||
markup = get_reply_keyboard_for_post()
|
||||
help_message_id = await send_text_message(GROUP_FOR_POST, message, "^", markup)
|
||||
|
||||
#Записываем в state идентификаторы текстового сообщения И последнего сообщения медиагруппы
|
||||
# Записываем в state идентификаторы текстового сообщения И последнего сообщения медиагруппы
|
||||
await state.update_data(media_group_message_id=media_group_message_id, help_message_id=help_message_id)
|
||||
|
||||
#Получаем клавиатуру для пользователя, благодарим за пост, и возвращаем в дефолтное сообщение
|
||||
# Получаем клавиатуру для пользователя, благодарим за пост, и возвращаем в дефолтное сообщение
|
||||
markup_for_user = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
success_send_message = messages.get_message(get_first_name(message), 'SUCCESS_SEND_MESSAGE')
|
||||
await message.answer(success_send_message, reply_markup=markup_for_user)
|
||||
@@ -283,11 +290,3 @@ async def resend_message_in_group_for_message(message: types.Message, state: FSM
|
||||
elif user_state == "CHAT":
|
||||
markup = get_reply_keyboard_leave_chat()
|
||||
await message.answer(question, reply_markup=markup)
|
||||
|
||||
# @private_router.message(
|
||||
# ChatTypeFilter(chat_type=["private"])
|
||||
# )
|
||||
# async def default(message: types.Message, state: FSMContext):
|
||||
# markup = get_reply_keyboard(BotDB, message.from_user.id)
|
||||
# await message.answer('Кажется ты заблудился. Держи клавиатуру, твое состояние сброшено на начало', reply_markup=markup)
|
||||
# await state.set_state("START")
|
||||
|
||||
Reference in New Issue
Block a user