29 lines
1.4 KiB
Python
29 lines
1.4 KiB
Python
import disnake
|
|
|
|
class castle_design_confirmation(disnake.ui.View):
|
|
def __init__(self,image:disnake.Attachment,sender:disnake.Member,player):
|
|
self.image = image
|
|
self.sender = sender
|
|
self.player_name = player
|
|
self.message:disnake.Message
|
|
|
|
embed = disnake.Embed(title="Castle Design Submission")
|
|
embed.description = f"{self.sender.name} submits this design for {self.player_name}"
|
|
embed.set_image(file=image.to_file())
|
|
super().__init__(timeout=300)
|
|
|
|
async def on_timeout(self) -> None:
|
|
self.message.edit(content="This submission is timing out")
|
|
|
|
@disnake.ui.button(label="Confirm Submission",emoji="✅",style=disnake.ButtonStyle.green)
|
|
async def confirm_image(self,button,inter:disnake.MessageInteraction):
|
|
if inter.author.id == self.sender.id:
|
|
if not inter.author.guild_permissions.administrator:
|
|
await inter.send(ephemeral=True,content="Sorry, you can't confirm your own submissions")
|
|
await inter.send(ephemeral=True,content="Thank you for confirming!")
|
|
await self.message.delete()
|
|
|
|
@disnake.ui.button(label="Delete Submission",emoji="❌",style=disnake.ButtonStyle.red)
|
|
async def delete_image(self,button,inter:disnake.MessageInteraction):
|
|
await inter.send(ephemeral=True,content="Submission will disregarded")
|
|
await self.message.delete() |