Mise à jour du système d'absence staff
This commit is contained in:
parent
ae2347c7ce
commit
d8b2f06f86
3 changed files with 108 additions and 105 deletions
|
|
@ -14,18 +14,9 @@ class WhitelistMonitor(commands.Cog):
|
|||
self.whitelist_file = "data/whitelist.json"
|
||||
self.persistent_views_added = False
|
||||
self.big_permissions = [
|
||||
disnake.Permissions.administrator,
|
||||
disnake.Permissions.manage_guild,
|
||||
disnake.Permissions.manage_roles,
|
||||
disnake.Permissions.manage_channels,
|
||||
disnake.Permissions.kick_members,
|
||||
disnake.Permissions.ban_members,
|
||||
disnake.Permissions.manage_messages,
|
||||
disnake.Permissions.moderate_members,
|
||||
disnake.Permissions.manage_nicknames,
|
||||
disnake.Permissions.manage_emojis,
|
||||
disnake.Permissions.manage_webhooks,
|
||||
disnake.Permissions.view_audit_log
|
||||
"administrator", "manage_guild", "manage_roles", "manage_channels",
|
||||
"kick_members", "ban_members", "manage_messages", "moderate_members",
|
||||
"manage_nicknames", "manage_emojis", "manage_webhooks", "view_audit_log"
|
||||
]
|
||||
|
||||
def load_whitelist(self) -> Dict[str, List[str]]:
|
||||
|
|
@ -72,11 +63,8 @@ class WhitelistMonitor(commands.Cog):
|
|||
|
||||
def has_big_permissions(self, role: disnake.Role) -> bool:
|
||||
"""Check if role has significant permissions."""
|
||||
permissions = role.permissions
|
||||
for perm in self.big_permissions:
|
||||
if permissions.administrator or getattr(permissions, perm.name, False):
|
||||
return True
|
||||
return False
|
||||
perms = role.permissions
|
||||
return any(getattr(perms, p, False) for p in self.big_permissions)
|
||||
|
||||
async def send_whitelist_notification(self, member: disnake.Member, removed_roles: List[disnake.Role]):
|
||||
"""Send DM notification to user about whitelist member losing roles."""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue