From 0214a29a2ed02b3ecf2bdd7dca3ce06300f407c6 Mon Sep 17 00:00:00 2001 From: Profitroll <47523801+profitrollgame@users.noreply.github.com> Date: Wed, 4 Jan 2023 21:55:50 +0100 Subject: [PATCH] Fixed handlers --- holochecker.py | 2 +- modules/handlers/everything.py | 17 +++++++++++++++-- modules/handlers/sponsorship.py | 5 +++-- 3 files changed, 19 insertions(+), 5 deletions(-) diff --git a/holochecker.py b/holochecker.py index 92b504a..46abed3 100644 --- a/holochecker.py +++ b/holochecker.py @@ -37,9 +37,9 @@ from modules.callbacks.sus import * from modules.handlers.confirmation import * from modules.handlers.contact import * from modules.handlers.group_join import * -from modules.handlers.sponsorship import * from modules.handlers.voice import * from modules.handlers.welcome import * +from modules.handlers.sponsorship import * from modules.handlers.everything import * from modules.scheduled import * diff --git a/modules/handlers/everything.py b/modules/handlers/everything.py index 6de82e8..db22879 100644 --- a/modules/handlers/everything.py +++ b/modules/handlers/everything.py @@ -69,19 +69,25 @@ async def any_stage(app: Client, msg: Message): if msg.photo is not None: col_spoilers.find_one_and_update( {"user": msg.from_user.id, "completed": False}, {"$set": {"photo": msg.photo.file_id}} ) await msg.reply_text(locale("spoiler_send_description", "message", locale=msg.from_user), reply_markup=ReplyKeyboardMarkup(locale("spoiler_description", "keyboard"), resize_keyboard=True, one_time_keyboard=True, placeholder=locale("spoiler_description", "force_reply", locale=msg.from_user))) + logWrite(f"Adding photo with id {msg.photo.file_id} to {msg.from_user.id}'s spoiler") return - elif msg.video is not None: + + if msg.video is not None: col_spoilers.find_one_and_update( {"user": msg.from_user.id, "completed": False}, {"$set": {"video": msg.video.file_id}} ) await msg.reply_text(locale("spoiler_send_description", "message", locale=msg.from_user), reply_markup=ReplyKeyboardMarkup(locale("spoiler_description", "keyboard"), resize_keyboard=True, one_time_keyboard=True, placeholder=locale("spoiler_description", "force_reply", locale=msg.from_user))) + logWrite(f"Adding video with id {msg.video.file_id} to {msg.from_user.id}'s spoiler") return - elif msg.animation is not None: + + if msg.animation is not None: col_spoilers.find_one_and_update( {"user": msg.from_user.id, "completed": False}, {"$set": {"animation": msg.animation.file_id}} ) await msg.reply_text(locale("spoiler_send_description", "message", locale=msg.from_user), reply_markup=ReplyKeyboardMarkup(locale("spoiler_description", "keyboard"), resize_keyboard=True, one_time_keyboard=True, placeholder=locale("spoiler_description", "force_reply", locale=msg.from_user))) + logWrite(f"Adding animation with id {msg.animation.file_id} to {msg.from_user.id}'s spoiler") return if spoiler["photo"] is None and spoiler["video"] is None and spoiler["animation"] is None and spoiler["text"] is None: col_spoilers.find_one_and_update( {"user": msg.from_user.id, "completed": False}, {"$set": {"text": msg.text}} ) await msg.reply_text(locale("spoiler_send_description", "message", locale=msg.from_user), reply_markup=ReplyKeyboardMarkup(locale("spoiler_description", "keyboard"), resize_keyboard=True, one_time_keyboard=True, placeholder=locale("spoiler_description", "force_reply", locale=msg.from_user))) + logWrite(f"Adding text '{msg.text}' to {msg.from_user.id}'s spoiler") else: for lc in all_locales("spoiler_description", "keyboard"): if msg.text == lc[-1][0]: @@ -89,6 +95,7 @@ async def any_stage(app: Client, msg: Message): return if msg.text != "-": col_spoilers.find_one_and_update( {"user": msg.from_user.id, "completed": False}, {"$set": {"description": msg.text, "completed": True}} ) + logWrite(f"Adding description '{msg.text}' to {msg.from_user.id}'s spoiler") await msg.reply_text(locale("spoiler_using_description", "message", locale=msg.from_user).format(msg.text), reply_markup=ReplyKeyboardRemove()) await msg.reply_text(locale("spoiler_ready", "message", locale=msg.from_user), quote=False, reply_markup=InlineKeyboardMarkup([[InlineKeyboardButton(locale("spoiler_send", "button", locale=msg.from_user), switch_inline_query=f"spoiler:{spoiler['_id'].__str__()}")]])) @@ -154,6 +161,12 @@ async def any_stage(app: Client, msg: Message): async def message_in_group(app: Client, msg: Message): if (msg.chat is not None) and (msg.via_bot is not None): if (msg.via_bot.id == (await app.get_me()).id) and (msg.chat.id == configGet("users", "groups")): + if msg.text.startswith(locale("spoiler_described", "message").split()[0]) or msg.text.startswith(locale("spoiler_empty", "message").split()[0]): + try: + await msg.forward(configGet("users", "groups"), disable_notification=True) + except: + pass + return if configGet("remove_application_time") > 0: logWrite(f"User {msg.from_user.id} requested application in destination group, removing in {configGet('remove_application_time')} minutes") await asyncio.sleep(configGet("remove_application_time")*60) diff --git a/modules/handlers/sponsorship.py b/modules/handlers/sponsorship.py index 0c9c7d1..4021cf0 100644 --- a/modules/handlers/sponsorship.py +++ b/modules/handlers/sponsorship.py @@ -5,11 +5,12 @@ from pyrogram.client import Client from classes.holo_user import HoloUser from modules import custom_filters -@app.on_message(custom_filters.enabled_sponsorships & ~filters.scheduled & filters.photo & filters.private) +@app.on_message(custom_filters.enabled_sponsorships & custom_filters.filling_sponsorship & ~filters.scheduled & filters.private) async def sponsor_proof(app: Client, msg: Message): if msg.via_bot is None: holo_user = HoloUser(msg.from_user) - await holo_user.sponsorship_next(msg.text, msg=msg, photo=msg.photo) \ No newline at end of file + if msg.photo is not None: + await holo_user.sponsorship_next(msg.text, msg=msg, photo=msg.photo) \ No newline at end of file