From 84c3dd44135f4d7779f277f653e4d799b188f542 Mon Sep 17 00:00:00 2001 From: SeaswimmerTheFsh Date: Thu, 21 Sep 2023 11:09:46 -0400 Subject: [PATCH] feat(suggestions): added modals for approve and deny context menu commands --- suggestions/suggestions.py | 42 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/suggestions/suggestions.py b/suggestions/suggestions.py index b78d8e3..53939a3 100644 --- a/suggestions/suggestions.py +++ b/suggestions/suggestions.py @@ -605,3 +605,45 @@ class Suggestions(commands.Cog): await self.config.custom("SUGGESTION", server, suggestion_id).denied.set( True ) + + class SuggestionApproveModal(discord.ui.Modal, title="Approving suggestion..."): + def __init__(self, cog_instance, message): + super().__init__() + self.cog_instance = cog_instance + self.message = message + + reason = discord.ui.TextInput( + label="Approval Reason", + placeholder="Why are you approving this suggestion?", + style=discord.TextStyle.paragraph, + required=False, + max_length=1024 + ) + + async def on_submit(self, interaction: discord.Interaction): + if self.reason.value != "": + await self.cog_instance.interaction_finish_suggestion(interaction, self.message, True, self.reason.value) + else: + await self.cog_instance.interaction_finish_suggestion(interaction, self.message, True, None) + await interaction.response.send_message(content="Suggestion approved!", ephemeral=True) + + class SuggestionDenyModal(discord.ui.Modal, title="Denying suggestion..."): + def __init__(self, cog_instance, message): + super().__init__() + self.cog_instance = cog_instance + self.message = message + + reason = discord.ui.TextInput( + label="Denial Reason", + placeholder="Why are you denying this suggestion?", + style=discord.TextStyle.paragraph, + required=False, + max_length=1024 + ) + + async def on_submit(self, interaction: discord.Interaction): + if self.reason.value != "": + await self.cog_instance.interaction_finish_suggestion(interaction, self.message, False, self.reason.value) + else: + await self.cog_instance.interaction_finish_suggestion(interaction, self.message, False, None) + await interaction.response.send_message(content="Suggestion denied!", ephemeral=True)