Handle testing mode in modals
This commit is contained in:
parent
ce01752e31
commit
fcedfd3760
@ -105,6 +105,10 @@ class AIModerationCog(commands.Cog):
|
||||
)
|
||||
print("AIModerationCog Initialized.")
|
||||
|
||||
def is_testing_mode(self, guild_id: int) -> bool:
|
||||
"""Return True if testing mode is enabled for the guild."""
|
||||
return get_guild_config(guild_id, "TESTING_MODE", False)
|
||||
|
||||
class QuickActionView(discord.ui.View):
|
||||
"""Buttons for quick moderator actions."""
|
||||
|
||||
@ -134,6 +138,12 @@ class AIModerationCog(commands.Cog):
|
||||
"You lack permission to ban members.", ephemeral=True
|
||||
)
|
||||
return
|
||||
if self.view.parent.is_testing_mode(interaction.guild.id):
|
||||
await interaction.response.send_message(
|
||||
f"[TEST MODE] Would ban {self.view.target.mention}.",
|
||||
ephemeral=True,
|
||||
)
|
||||
return
|
||||
try:
|
||||
await self.view.target.ban(
|
||||
reason=self.reason.value or "Escalated via mod panel"
|
||||
@ -168,6 +178,12 @@ class AIModerationCog(commands.Cog):
|
||||
"You lack permission to kick members.", ephemeral=True
|
||||
)
|
||||
return
|
||||
if self.view.parent.is_testing_mode(interaction.guild.id):
|
||||
await interaction.response.send_message(
|
||||
f"[TEST MODE] Would kick {self.view.target.mention}.",
|
||||
ephemeral=True,
|
||||
)
|
||||
return
|
||||
try:
|
||||
await self.view.target.kick(
|
||||
reason=self.reason.value or "Escalated via mod panel"
|
||||
@ -227,6 +243,12 @@ class AIModerationCog(commands.Cog):
|
||||
"You lack permission to timeout members.", ephemeral=True
|
||||
)
|
||||
return
|
||||
if self.view.parent.is_testing_mode(interaction.guild.id):
|
||||
await interaction.response.send_message(
|
||||
f"[TEST MODE] Would timeout {self.view.target.mention} for {self.duration.value}.",
|
||||
ephemeral=True,
|
||||
)
|
||||
return
|
||||
delta = self.parse_duration(self.duration.value)
|
||||
if not delta or delta > datetime.timedelta(days=28):
|
||||
await interaction.response.send_message(
|
||||
|
Loading…
x
Reference in New Issue
Block a user