File size: 2,967 Bytes
80287e2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
from pyrogram import filters
from pyrogram.types import Message
from Devine import app
from Devine.misc import SUDOERS
from Devine.utils.database import add_gban_user, remove_gban_user
from Devine.utils.decorators.language import language
from Devine.utils.extraction import extract_user
from config import BANNED_USERS, BOT_ID, OWNER_ID
@app.on_message(filters.command(["block"]) & SUDOERS)
@language
async def useradd(client, message: Message, _):
if not message.reply_to_message:
if len(message.command) != 2:
return await message.reply_text("ʀᴇᴘʟʏ ᴛᴏ ᴀ ᴜsᴇʀ's ᴍᴇssᴀɢᴇ ᴏʀ ɢɪᴠᴇ ᴜsᴇʀɴᴀᴍᴇ ᴏʀ ᴜsᴇʀ ɪᴅ ғᴏʀ ʙʟᴏᴄᴋ ᴛʜᴇᴍ.")
user = await extract_user(message)
if user.id == BOT_ID:
return await message.reply_text("ᴡʜʏ sʜᴏᴜʟᴅ ɪ ʙʟᴏᴄᴋ ᴍʏsᴇʟғ?")
if user.id == OWNER_ID:
return await message.reply_text("ᴀʀᴇ ʏᴏᴜ sᴇʀɪᴏᴜs? ʜᴏᴡ ᴄᴀɴ ɪ ʙʟᴏᴄᴋ ᴍʏ ʟᴏʀᴅ?")
if user.id in BANNED_USERS:
return await message.reply_text(f"{user.mention} ɪs ᴀʟʀᴇᴀᴅʏ ʙʟᴏᴄᴋᴇᴅ.")
await add_gban_user(user.id)
BANNED_USERS.add(user.id)
await message.reply_text(f"{user.mention} ʜᴀs ʙᴇᴇɴ ʙʟᴏᴄᴋᴇᴅ.")
@app.on_message(filters.command(["unblock"]) & SUDOERS)
@language
async def userdel(client, message: Message, _):
if not message.reply_to_message:
if len(message.command) != 2:
return await message.reply_text("ʀᴇᴘʟʏ ᴛᴏ ᴀ ᴜsᴇʀ's ᴍᴇssᴀɢᴇ ᴏʀ ɢɪᴠᴇ ᴜsᴇʀɴᴀᴍᴇ ᴏʀ ᴜsᴇʀ ɪᴅ ғᴏʀ ʙʟᴏᴄᴋ ᴛʜᴇᴍ.")
user = await extract_user(message)
if user.id not in BANNED_USERS:
return await message.reply_text(f"{user.mention} ɪs ɴᴏᴛ ʙʟᴏᴄᴋᴇᴅ.")
await remove_gban_user(user.id)
BANNED_USERS.remove(user.id)
await message.reply_text(f"{user.mention} ʜᴀs ʙᴇᴇɴ ᴜɴʙʟᴏᴄᴋᴇᴅ.")
@app.on_message(filters.command(["blocked", "blockedusers", "blusers"]) & SUDOERS)
@language
async def sudoers_list(client, message: Message, _):
if not BANNED_USERS:
return await message.reply_text("ɴᴏ ᴜsᴇʀs ᴀʀᴇ ᴄᴜʀʀᴇɴᴛʟʏ ʙʟᴏᴄᴋᴇᴅ.")
mystic = await message.reply_text("ᴀᴄᴄᴇssɪɴɢ ʙʟᴏᴄᴋᴇᴅ ᴜsᴇʀs ᴅᴇᴛᴀɪʟs...")
msg = "<b>ʙʟᴏᴄᴋᴇᴅ ᴜsᴇʀs ʟɪsᴛ:</b>\n\n"
count = 0
for users in BANNED_USERS:
try:
user = await app.get_users(users)
user = user.first_name if not user.mention else user.mention
count += 1
except:
continue
msg += f"{count}‣ {user}\n"
if count == 0:
return await mystic.edit_text("ɴᴏ ᴜsᴇʀs ᴀʀᴇ ᴄᴜʀʀᴇɴᴛʟʏ ʙʟᴏᴄᴋᴇᴅ.")
else:
return await mystic.edit_text(msg)
|