From 2dc6a5429943577176fb8da5ff02201ca57c5f72 Mon Sep 17 00:00:00 2001 From: profitroll Date: Sun, 12 Mar 2023 20:02:49 +0100 Subject: [PATCH] Spoiler can't be empty now --- locale/uk.json | 4 +-- modules/callbacks/spoiler.py | 20 ++++++--------- modules/handlers/everything.py | 46 ++++++++++++++-------------------- modules/inline.py | 22 ++++++---------- 4 files changed, 34 insertions(+), 58 deletions(-) diff --git a/locale/uk.json b/locale/uk.json index d1e23ac..b812b8c 100644 --- a/locale/uk.json +++ b/locale/uk.json @@ -109,14 +109,12 @@ "spoiler_started": "Розпочато створення спойлера. Будь ласка, оберіть категорію спойлера за допомогою клавіатури бота.", "spoiler_unfinished": "У вас ще є незавершений спойлер. Надішліть /cancel щоб зупинити його створення", "spoiler_cancel": "Створення спойлера було припинено", - "spoiler_empty": "Спойлер категорії \"{0}\" без опису", - "spoiler_empty_named": "Спойлер категорії \"{0}\" без опису від **{1}**", "spoiler_described": "Спойлер категорії \"{0}\": {1}", "spoiler_described_named": "Спойлер категорії \"{0}\" від **{1}**: {2}", "spoiler_description_enter": "Добре, введіть бажаний опис спойлера", "spoiler_description_too_long": "Текст занадто довгий. Будь ласка, умісти опис у 1024 символи.", "spoiler_using_description": "Встановлено опис спойлера: {0}\n\nЗалишилось додати вміст самого спойлера. Бот приймає текстове повідомлення, фото, відео, файл а також гіф зображення (1 шт.)", - "spoiler_send_description": "Тепер треба надіслати коротенький опис спойлера, щоб люди розуміли що під ним варто очкувати. Надішли мінус (-) щоб пропустити цей крок.", + "spoiler_send_description": "Тепер треба надіслати коротенький опис спойлера, щоб люди розуміли що під ним варто очкувати.", "spoiler_ready": "Успіх! Спойлер створено", "spoiler_send": "Користуйтесь кнопкою нижче щоб надіслати його.", "spoiler_incorrect_content": "Бот не підтримує такий контент. Будь ласка, надішли текст, фото, відео, файл або анімацію (гіф).", diff --git a/modules/callbacks/spoiler.py b/modules/callbacks/spoiler.py index fd79e08..7dc26f0 100644 --- a/modules/callbacks/spoiler.py +++ b/modules/callbacks/spoiler.py @@ -29,19 +29,13 @@ async def callback_query_shc(app: Client, clb: CallbackQuery): spoil = col_spoilers.find_one({"_id": ObjectId(clb.data.split("_")[1])}) - if spoil["description"] == "": - desc = locale("spoiler_empty_named", "message", locale=clb.from_user).format( - locale(spoil["category"], "message", "spoiler_categories"), - clb.from_user.first_name, - ) - else: - desc = locale( - "spoiler_described_named", "message", locale=clb.from_user - ).format( - locale(spoil["category"], "message", "spoiler_categories"), - clb.from_user.first_name, - spoil["description"], - ) + desc = locale( + "spoiler_described_named", "message", locale=clb.from_user + ).format( + locale(spoil["category"], "message", "spoiler_categories"), + clb.from_user.first_name, + spoil["description"], + ) await app.send_message( configGet("users", "groups"), diff --git a/modules/handlers/everything.py b/modules/handlers/everything.py index 2ed37a4..a1dd3fd 100644 --- a/modules/handlers/everything.py +++ b/modules/handlers/everything.py @@ -147,33 +147,27 @@ async def any_stage(app: Client, msg: Message): # await msg.reply_text(locale("spoiler_description_enter", "message", locale=msg.from_user), reply_markup=ForceReply(placeholder=locale("spoiler_description", "force_reply", locale=msg.from_user))) # return - if str(msg.text) != "-": - msg.text = fix_text(str(msg.text)) - if len(str(msg.text)) > 1024: - await msg.reply_text( - locale( - "spoiler_description_too_long", - "message", + msg.text = fix_text(str(msg.text)) + if len(str(msg.text)) > 1024: + await msg.reply_text( + locale( + "spoiler_description_too_long", + "message", + locale=msg.from_user, + ), + reply_markup=ForceReply( + placeholder=locale( + "spoiler_description", + "force_reply", locale=msg.from_user, - ), - reply_markup=ForceReply( - placeholder=locale( - "spoiler_description", - "force_reply", - locale=msg.from_user, - ) - ), - ) - return - col_spoilers.find_one_and_update( - {"user": msg.from_user.id, "completed": False}, - {"$set": {"description": msg.text}}, - ) - else: - col_spoilers.find_one_and_update( - {"user": msg.from_user.id, "completed": False}, - {"$set": {"description": ""}}, + ) + ), ) + return + col_spoilers.find_one_and_update( + {"user": msg.from_user.id, "completed": False}, + {"$set": {"description": msg.text}}, + ) logWrite( f"Adding description '{str(msg.text)}' to {msg.from_user.id}'s spoiler" @@ -376,8 +370,6 @@ async def message_in_group(app: Client, msg: Message): ): if str(msg.text).startswith( locale("spoiler_described", "message").split()[0] - ) or str(msg.text).startswith( - locale("spoiler_empty", "message").split()[0] ): logWrite(f"User {msg.from_user.id} sent spoiler to user's group") try: diff --git a/modules/inline.py b/modules/inline.py index d06a798..5173851 100644 --- a/modules/inline.py +++ b/modules/inline.py @@ -36,21 +36,13 @@ async def inline_answer(client: Client, inline_query: InlineQuery): ) if spoil is not None: - desc = ( - locale( - "spoiler_empty", "message", locale=inline_query.from_user - ).format( - locale(spoil["category"], "message", "spoiler_categories") - ) - if spoil["description"] == "" - else locale( - "spoiler_described", - "message", - locale=inline_query.from_user, - ).format( - locale(spoil["category"], "message", "spoiler_categories"), - spoil["description"], - ) + desc = locale( + "spoiler_described", + "message", + locale=inline_query.from_user, + ).format( + locale(spoil["category"], "message", "spoiler_categories"), + spoil["description"], ) results = [