From e72647612d9e5077e2774f70c3058a8acc317002 Mon Sep 17 00:00:00 2001 From: Mow910 Date: Sun, 3 May 2026 19:01:08 +0200 Subject: [PATCH] Update moderation command permissions in Discord bot - Changed permissions for the `/ban`, `/kick`, and `/timeout` commands to require `manage_messages` instead of their previous specific permissions. - Updated context menu commands for banning, kicking, and timing out authors to align with the new permission structure, ensuring consistent moderation capabilities across commands. --- discordbot/moderation.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/discordbot/moderation.py b/discordbot/moderation.py index b1d2cec..d64c5ec 100644 --- a/discordbot/moderation.py +++ b/discordbot/moderation.py @@ -1971,7 +1971,7 @@ def _interaction_must_be_staff_member(interaction: discord.Interaction) -> bool: @app_commands.command(name="ban", description="Bannit définitivement un membre du serveur.") @app_commands.guild_only() -@app_commands.default_permissions(ban_members=True) +@app_commands.default_permissions(manage_messages=True) @app_commands.describe(utilisateur="Membre à bannir", raison="Raison enregistrée dans les logs") async def moderation_slash_ban(interaction: discord.Interaction, utilisateur: discord.Member, raison: Optional[str] = None): if not ConfigurationHelper().getValue('moderation_ban_enable'): @@ -1996,7 +1996,7 @@ async def moderation_slash_ban(interaction: discord.Interaction, utilisateur: di @app_commands.command(name="kick", description="Expulse un membre du serveur.") @app_commands.guild_only() -@app_commands.default_permissions(kick_members=True) +@app_commands.default_permissions(manage_messages=True) @app_commands.describe(utilisateur="Membre à expulser", raison="Raison enregistrée dans les logs") async def moderation_slash_kick(interaction: discord.Interaction, utilisateur: discord.Member, raison: Optional[str] = None): if not ConfigurationHelper().getValue('moderation_kick_enable'): @@ -2021,7 +2021,7 @@ async def moderation_slash_kick(interaction: discord.Interaction, utilisateur: d @app_commands.command(name="timeout", description="Exclut temporairement un membre (time out).") @app_commands.guild_only() -@app_commands.default_permissions(moderate_members=True) +@app_commands.default_permissions(manage_messages=True) @app_commands.describe( utilisateur="Membre à exclure temporairement", duree="Durée : 10m, 1h, 60s, 2j, etc.", @@ -2205,7 +2205,7 @@ async def moderation_ctx_warn_author(interaction: discord.Interaction, message: @app_commands.context_menu(name="Bannir l'auteur") @app_commands.guild_only() -@app_commands.default_permissions(ban_members=True) +@app_commands.default_permissions(manage_messages=True) async def moderation_ctx_ban_author(interaction: discord.Interaction, message: discord.Message): if not ConfigurationHelper().getValue('moderation_ban_enable'): await interaction.response.send_message("❌ La modération (ban) n'est pas activée sur ce serveur.", ephemeral=True) @@ -2226,7 +2226,7 @@ async def moderation_ctx_ban_author(interaction: discord.Interaction, message: d @app_commands.context_menu(name="Expulser l'auteur") @app_commands.guild_only() -@app_commands.default_permissions(kick_members=True) +@app_commands.default_permissions(manage_messages=True) async def moderation_ctx_kick_author(interaction: discord.Interaction, message: discord.Message): if not ConfigurationHelper().getValue('moderation_kick_enable'): await interaction.response.send_message("❌ La modération (kick) n'est pas activée sur ce serveur.", ephemeral=True) @@ -2247,7 +2247,7 @@ async def moderation_ctx_kick_author(interaction: discord.Interaction, message: @app_commands.context_menu(name="Exclure temporairement") @app_commands.guild_only() -@app_commands.default_permissions(moderate_members=True) +@app_commands.default_permissions(manage_messages=True) async def moderation_ctx_timeout_author(interaction: discord.Interaction, message: discord.Message): if not ConfigurationHelper().getValue('moderation_enable'): await interaction.response.send_message("❌ La modération n'est pas activée sur ce serveur.", ephemeral=True)