Spaces:
Running
Running
File size: 2,527 Bytes
a8e9b84 |
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 65 66 67 68 69 70 71 72 |
from pyrogram import filters
from pyrogram.types import Message
from DragMusic import app
from DragMusic.misc import SUDOERS
from DragMusic.utils.database import add_sudo, remove_sudo
from DragMusic.utils.decorators.language import language
from DragMusic.utils.extraction import extract_user
from DragMusic.utils.inline import close_markup
from config import BANNED_USERS, OWNER_ID
@app.on_message(filters.command(["addsudo"]) & filters.user(OWNER_ID))
@language
async def useradd(client, message: Message, _):
if not message.reply_to_message:
if len(message.command) != 2:
return await message.reply_text(_["general_1"])
user = await extract_user(message)
if user.id in SUDOERS:
return await message.reply_text(_["sudo_1"].format(user.mention))
added = await add_sudo(user.id)
if added:
SUDOERS.add(user.id)
await message.reply_text(_["sudo_2"].format(user.mention))
else:
await message.reply_text(_["sudo_8"])
@app.on_message(filters.command(["delsudo", "rmsudo"]) & filters.user(OWNER_ID))
@language
async def userdel(client, message: Message, _):
if not message.reply_to_message:
if len(message.command) != 2:
return await message.reply_text(_["general_1"])
user = await extract_user(message)
if user.id not in SUDOERS:
return await message.reply_text(_["sudo_3"].format(user.mention))
removed = await remove_sudo(user.id)
if removed:
SUDOERS.remove(user.id)
await message.reply_text(_["sudo_4"].format(user.mention))
else:
await message.reply_text(_["sudo_8"])
@app.on_message(filters.command(["sudolist", "listsudo", "sudoers"]) & ~BANNED_USERS)
@language
async def sudoers_list(client, message: Message, _):
text = _["sudo_5"]
user = await app.get_users(OWNER_ID)
user = user.first_name if not user.mention else user.mention
text += f"1➤ {user}\n"
count = 0
smex = 0
for user_id in SUDOERS:
if user_id != OWNER_ID:
try:
user = await app.get_users(user_id)
user = user.first_name if not user.mention else user.mention
if smex == 0:
smex += 1
text += _["sudo_6"]
count += 1
text += f"{count}➤ {user}\n"
except:
continue
if not text:
await message.reply_text(_["sudo_7"])
else:
await message.reply_text(text, reply_markup=close_markup(_))
|