27 lines
1.1 KiB
Python
27 lines
1.1 KiB
Python
from app import app, isAnAdmin
|
|
from pyrogram.types import InlineKeyboardMarkup, InlineKeyboardButton, CallbackQuery
|
|
from pyrogram import filters
|
|
from pyrogram.client import Client
|
|
from modules.utils import locale
|
|
from modules.database import col_bans
|
|
from modules.logging import logWrite
|
|
|
|
@app.on_callback_query(filters.regex("ban_[\s\S]*"))
|
|
async def callback_query_reject(app: Client, clb: CallbackQuery):
|
|
|
|
fullclb = clb.data.split("_")
|
|
|
|
if not await isAnAdmin(int(fullclb[1])):
|
|
col_bans.insert_one( {"user": int(fullclb[1])} )
|
|
|
|
edited_markup = [[InlineKeyboardButton(text=str(locale("banned", "button")), callback_data="nothing")]]
|
|
|
|
await clb.message.edit(text=clb.message.text, reply_markup=InlineKeyboardMarkup(edited_markup))
|
|
await clb.answer(text=locale("sub_banned", "callback", locale=clb.from_user))
|
|
|
|
logWrite(f"User {fullclb[1]} has been banned by {clb.from_user.id}")
|
|
|
|
try:
|
|
await app.send_message(int(fullclb[1]), locale("you_are_banned", "message"))
|
|
except Exception as exp:
|
|
logWrite(f"Could send ban message to {fullclb[1]} due to {exp}") |