Englishmessage
Englishmessage
def get_setting(name):
return settings.get(name)
def is_staff(member):
staff_role_id = get_setting('staff_role_id')
return any(role.id == staff_role_id for role in member.roles)
class TicketSelect(Select):
def __init__(self, categories):
options = [discord.SelectOption(label=name, value=key, emoji=emoji) for
key, (name, _, emoji) in categories.items() if _]
super().__init__(placeholder="Make a selection", options=options)
self.categories = categories
class TicketView(View):
def __init__(self, categories):
super().__init__(timeout=None) # No timeout
self.add_item(TicketSelect(categories))
try:
await interaction.user.send(f"Your {selected_category} ticket was
**successfully created** in {ticket_channel.mention}.\nPlease **Describe Your
issue** in {ticket_channel.mention} And do not **Ping Any Staff**! ")
except discord.Forbidden:
embed = discord.Embed(
title="DM Error",
description="I cannot send DMs to you. Please enable DMs from
server members.",
color=0xE64D3A
)
await interaction.followup.send(embed=embed)
return
except discord.HTTPException as e:
embed = discord.Embed(
title="DM Error",
description=f"Failed to send DM: {e}",
color=discord.Color.red()
)
await interaction.followup.send(embed=embed)
return
ticket_embed = discord.Embed(
title="Madfut Kingdom Ticket",
description="Staff **will be with you shortly**. Please **Do not Ping**
Anyone!\nTo **close this ticket**, react with <a:tos:1262235135965925419>",
color=0xe57373
)
ticket_embed.set_footer(text="Vouch for the person that helped you in .")
await ticket_message.add_reaction('<a:tos:1262235135965925419>')
await ticket_channel.delete()
log_channel = bot.get_channel(get_setting('log_channel_id'))
if log_channel:
embed = discord.Embed(
title="Ticket Closed",
description=f"Ticket in {selected_category} category **closed by
{user.mention}**.",
color=0xE64D3A
)
await log_channel.send(embed=embed)
else:
print(f"Log channel with ID {get_setting('log_channel_id')} not
found.")
else:
embed = discord.Embed(
title="Category Not Found",
description="The specified category was not found.",
color=discord.Color.red()
)
await interaction.followup.send(embed=embed)
staff_role_id = get_setting('staff_role_id')
log_channel_id = get_setting('log_channel_id')
categories = {
'rewards': ('Rewards Ticket', get_setting('rewards_id'),
'<:Rewards:1262235276538019850>'),
'support': ('Support Ticket', get_setting('support_id'),
'<a:info:1262236112563470446>'),
'buy': ('Buy Ticket', get_setting('buy_id'),
'<:money:1262236285834104833>')
}
embed = discord.Embed(
title="Madfut Kingdom Tickets",
description=(
"<a:info:1262236112563470446> Open a **Support Ticket** if you require
**Support from Our Staff Team**!\n"
"<:money:1262236285834104833> Open a **Buy Ticket** if you would like
to **Purchase Anything From <#1262167195119780004>**!\n"
"<:Rewards:1262235276538019850> Open a **Rewards Ticket** if you would
like to **Claim Your Rewards**!\n\n"
"<a:tos:1262235135965925419> **Opening a Ticket without a Reason, Will
Result in an instantly Closed Ticket!**"
),
color=0x9370db
)
view = TicketView(categories)
await interaction.response.send_message(embed=embed, view=view)