TotalFreedomBot/checks.py

70 lines
2 KiB
Python
Raw Normal View History

2020-10-28 11:47:39 +00:00
import discord
from discord.ext import commands
server_liaison = 769659653096472634
event_host = 769659653096472629
server_banned = 769659653096472636
senior_admin = 769659653129896016
admin = 769659653121900553
master_builder = 769659653121900550
reports_channel_id = 769659654791233585
archived_reports_channel_id = 769659655033978900
guild_id = 769659653096472627
mentions_channel_id = 769659654027739151
discord_admin = 769659653129896025
discord_mod = 769659653129896023
devs = [114348811995840515, 147765181903011840]
class no_permission(commands.MissingPermissions):
pass
def is_staff():
def predicate(ctx):
user = ctx.message.author
for role in user.roles:
if role.id in [admin, senior_admin]:
return True
else:
raise no_permission(['IS_STAFF_MEMBER'])
return commands.check(predicate)
def is_dev():
def predicate(ctx):
user = ctx.message.author
if user.id in devs:
return True
else:
raise no_permission(['BOT_DEVELOPER'])
return commands.check(predicate)
def is_mod_or_has_perms(**permissions):
def predicate(ctx):
user = ctx.message.author
for role in user.roles:
if role.id in [discord_mod, discord_admin] or permissions:
return True
else:
raise no_permission(['IS_MOD_OR_HAS_PERMS'])
return commands.check(predicate)
def is_liaison():
def predicate(ctx):
user = ctx.message.author
for role in user.roles:
if role.id == server_liaison:
return True
else:
raise no_permission(['IS_SERVER_LIAISON'])
return commands.check(predicate)
def is_senior():
def predicate(ctx):
user = ctx.message.author
for role in user.roles:
if role.id == senior_admin:
return True
else:
raise no_permission(['IS_SENIOR_ADMIN'])
return commands.check(predicate)