Untitled
unknown
plain_text
a year ago
3.5 kB
4
Indexable
class ButtonView(View): def __init__(self, parent_view, embed): super().__init__() self.parent_view = parent_view self.embed = embed @discord.ui.button(label="Title", style=discord.ButtonStyle.secondary()) async def title_button(self, interaction: discord.Interaction, button: discord.ui.Button): super().__init__(title="Enter a Title") self.title_input = discord.ui.TextInput(label="Title", placeholder="Enter your title here...", required=True, max_length=50) self.add_item(self.title_input) @discord.ui.button(label="Description", style=discord.ButtonStyle.secondary()) async def description_button(self, interaction: discord.Interaction, button: discord.ui.Button): super().__init__(title="Enter a Description") self.description_input = discord.ui.TextInput(label="Description", placeholder="Enter your description here...", required=True, max_length=500) self.add_item(self.description_input) @discord.ui.button(label="Date", style=discord.ButtonStyle.secondary()) async def date_button(self, interaction: discord.Interaction, button: discord.ui.Button): super().__init__(title="Enter a Date") self.date_input = discord.ui.TextInput(label="Date", placeholder="Enter the current date...", required=True, max_length=8) self.add_item(self.date_input) # Handle form submission async def on_submit(self, interaction: discord.Interaction): # Update the embed with the entered title title = self.title_input.value description = self.description_input.value date = self.date_input.value self.parent_view.update_embed(title=title) self.parent_view.update_embed(description=description) self.parent_view.update_embed(date=date) await interaction.response.edit_message(embed=self.parent_view.embed, view=self.parent_view) @discord.ui.button(label="Confirm", style=discord.ButtonStyle.success()) async def callback(self, interaction: discord.Interaction): await interaction.response.send_message("Confirmed!", ephemeral=True) class ButtonModal(discord.ui.Modal): def __init__(self, parent_view, embed): self.parent_view = parent_view self.embed = embed super().__init__(title="Enter a Title") super().__init__(description="Enter a Description") super().__init__(date="Enter a Date") self.title_input = discord.ui.TextInput(label="Title", placeholder="Enter the title here...", required=True, max_length=50) self.description_input = discord.ui.TextInput(label="Description", placeholder="Enter the description here...", required=True, max_length=500) self.date_input = discord.ui.TextInput(label="Date", placeholder="Enter the current date here...", required=True, max_length=8) self.add_item(self.title_input) self.add_item(self.description_input) self.add_item(self.date_input) async def on_submit(self, interaction: discord.Interaction): title = self.title_input.value description = self.description_input.value date = self.date_input.value self.parent_view.update_embed(title=title, description=description, date=date) await interaction.response.edit_message(embed=self.parent_view.embed, view=self.parent_view)
Editor is loading...
Leave a Comment