1
0
Fork 0
mirror of synced 2024-06-26 18:21:15 +12:00
Bonfire/cogs/utils/checks.py

38 lines
1 KiB
Python

from discord.ext import commands
import discord
from . import config
def is_owner(ctx):
return ctx.message.author.id in config.owner_ids
def custom_perms(**perms):
def predicate(ctx):
if ctx.message.channel.is_private:
return False
member_perms = ctx.message.author.permissions_in(ctx.message.channel)
default_perms = discord.Permissions.none()
for perm, setting in perms.items():
setattr(default_perms, perm, setting)
try:
required_perm_value = config.get_content('custom_permissions')[ctx.message.server.id][
ctx.command.qualified_name]
required_perm = discord.Permissions(required_perm_value)
except KeyError:
required_perm = default_perms
except TypeError:
required_perm = default_perms
return member_perms >= required_perm
return commands.check(predicate)
def is_pm():
def predicate(ctx):
return ctx.message.channel.is_private
return commands.check(predicate)