from os import sep from pathlib import Path from pyrogram import filters from pyrogram.client import Client from pyrogram.types import CallbackQuery from modules.utils import jsonLoad, jsonSave, configGet, locale from modules.submissions import subBlock, subUnblock from modules.app import app @app.on_callback_query(filters.regex("sub_yes_[\s\S]*_[\s\S]*")) def callback_query_yes(app: Client, clb: CallbackQuery): fullclb = clb.data.split("_") user_locale = clb.from_user.language_code try: submission = app.get_messages(int(fullclb[2]), int(fullclb[3])) except: clb.answer(text=locale("sub_msg_unavail", "message", locale=user_locale), show_alert=True) return try: media = app.download_media(submission, file_name=configGet("queue", "locations")+sep) if clb.data.endswith("_caption"): index = jsonLoad(configGet("index", "locations")) index["captions"][Path(media).name] = submission.caption jsonSave(index, configGet("index", "locations")) except: clb.answer(text=locale("sub_media_unavail", "message", locale=user_locale), show_alert=True) return submission.reply_text(locale("sub_yes", "message", locale=submission.from_user.language_code), quote=True) clb.answer(text=locale("sub_yes", "callback", locale=user_locale).format(fullclb[2]), show_alert=True) @app.on_callback_query(filters.regex("sub_no_[\s\S]*_[\s\S]*")) def callback_query_no(app: Client, clb: CallbackQuery): fullclb = clb.data.split("_") user_locale = clb.from_user.language_code try: submission = app.get_messages(int(fullclb[2]), int(fullclb[3])) except: clb.answer(text=locale("sub_msg_unavail", "message", locale=user_locale), show_alert=True) return submission.reply_text(locale("sub_no", "message", locale=submission.from_user.language_code), quote=True) clb.answer(text=locale("sub_no", "callback", locale=user_locale).format(fullclb[2]), show_alert=True) @app.on_callback_query(filters.regex("sub_block_[\s\S]*")) def callback_query_block(app: Client, clb: CallbackQuery): fullclb = clb.data.split("_") user_locale = clb.from_user.language_code app.send_message(int(fullclb[2]), locale("sub_msg_unavail", "message", locale=configGet("locale"))) subBlock(int(fullclb[2])) clb.answer(text=locale("sub_block", "callback", locale=user_locale).format(fullclb[2]), show_alert=True) @app.on_callback_query(filters.regex("sub_unblock_[\s\S]*")) def callback_query_unblock(app: Client, clb: CallbackQuery): fullclb = clb.data.split("_") user_locale = clb.from_user.language_code app.send_message(int(fullclb[2]), locale("sub_msg_unavail", "message", locale=configGet("locale"))) subUnblock(int(fullclb[2])) clb.answer(text=locale("sub_unblock", "callback", locale=user_locale).format(fullclb[2]), show_alert=True)