2022-01-19 14:50:43 +00:00
|
|
|
""" chat utilities """
|
|
|
|
|
2022-01-19 14:56:13 +00:00
|
|
|
import asyncio
|
2022-01-19 14:50:43 +00:00
|
|
|
from functools import wraps
|
|
|
|
from driver.veez import bot
|
|
|
|
from config import SUDO_USERS
|
|
|
|
from pyrogram.types import Message
|
|
|
|
from driver.perms import member_permissions
|
|
|
|
from pyrogram.errors.exceptions.forbidden_403 import ChatWriteForbidden
|
|
|
|
|
|
|
|
|
|
|
|
async def authorised(m: Message):
|
|
|
|
chatID = message.chat.id
|
|
|
|
return 0
|
|
|
|
|
|
|
|
|
|
|
|
async def unauthorised(m: Message):
|
|
|
|
chatID = m.chat.id
|
|
|
|
text = (
|
|
|
|
"You're missing admin rights to use this command."
|
|
|
|
+ f"\n\n» ❌ can_manage_voice_chats"
|
|
|
|
)
|
|
|
|
try:
|
|
|
|
await m.reply_text(text)
|
|
|
|
except ChatWriteForbidden:
|
|
|
|
await bot.leave_chat(chatID)
|
|
|
|
return 1
|
|
|
|
|
|
|
|
|
|
|
|
async def adminsOnly(permission, m: Message):
|
|
|
|
chatID = m.chat.id
|
|
|
|
if not m.from_user:
|
|
|
|
if m.sender_chat:
|
|
|
|
return await authorised(m)
|
|
|
|
return await unauthorised(m)
|
|
|
|
userID = m.from_user.id
|
|
|
|
permissions = await member_permissions(chatID, userID)
|
|
|
|
if userID not in SUDO_USERS and permission not in permissions:
|
|
|
|
return await unauthorised(m)
|
|
|
|
return await authorised(m)
|