fix(ticket): boutons en français, accents, retrait priorité/infos,组织 layout
All checks were successful
ci / ci (push) Successful in 45s

- Boutons: Réclamer, Transférer, Verrouiller/Déverrouiller, Ajouter, Fermer
- Accents français partout (catégorie, équipe, configuré, etc.)
- Retiré PriorityButton et StatsButton (trop chargé)
- Layout: Gestion (Réclamer/Transférer/Verrouiller) → Ajouter/Fermer
This commit is contained in:
Mathis 2026-09-26 13:39:03 +02:00
parent a92dcef08e
commit 628e02aea9
2 changed files with 74 additions and 77 deletions

View file

@ -14,8 +14,6 @@ from tickets.ui import (
CloseButton,
LockButton,
PanelCreateButton,
PriorityButton,
StatsButton,
TransferButton,
_is_staff,
)
@ -29,8 +27,8 @@ class PanelView(discord.ui.LayoutView):
container = discord.ui.Container()
container.add_item(
discord.ui.TextDisplay(
"## Systeme de tickets\n"
"Besoin d'aide ? Creez un ticket et notre equipe vous repondra.\n"
"## Système de tickets\n"
"Besoin d'aide ? Créez un ticket et notre équipe vous répondra.\n"
"Cliquez sur le bouton ci-dessous pour commencer."
)
)
@ -43,11 +41,11 @@ class ConfigView(discord.ui.LayoutView):
def __init__(self):
super().__init__(timeout=None)
container = discord.ui.Container()
container.add_item(discord.ui.TextDisplay("## Configuration Tickets\nModifications enregistrees."))
container.add_item(discord.ui.TextDisplay("## Configuration Tickets\nModifications enregistrées."))
self.add_item(container)
class AddCategoryModal(discord.ui.Modal, title="Ajouter une categorie"):
class AddCategoryModal(discord.ui.Modal, title="Ajouter une catégorie"):
name = discord.ui.TextInput(label="Nom", max_length=50, required=True)
emoji = discord.ui.TextInput(label="Emoji", max_length=10, required=False)
description = discord.ui.TextInput(
@ -68,13 +66,13 @@ class AddCategoryModal(discord.ui.Modal, title="Ajouter une categorie"):
)
config.categories.append(cat)
storage.save_config(config)
await interaction.response.send_message(f"Categorie **{cat.name}** ajoutee.", ephemeral=True)
await interaction.response.send_message(f"Catégorie **{cat.name}** ajoutée.", ephemeral=True)
class ConfigToggleButton(discord.ui.Button):
def __init__(self, enabled: bool):
super().__init__(
label="Desactiver" if enabled else "Activer",
label="Désactiver" if enabled else "Activer",
style=discord.ButtonStyle.danger if enabled else discord.ButtonStyle.success,
custom_id="ticket_cfg_toggle",
)
@ -88,7 +86,7 @@ class ConfigToggleButton(discord.ui.Button):
class ConfigAddCatButton(discord.ui.Button):
def __init__(self):
super().__init__(label="Ajouter categorie", style=discord.ButtonStyle.primary, custom_id="ticket_cfg_addcat")
super().__init__(label="Ajouter catégorie", style=discord.ButtonStyle.primary, custom_id="ticket_cfg_addcat")
async def callback(self, interaction: discord.Interaction):
await interaction.response.send_modal(AddCategoryModal())
@ -112,7 +110,7 @@ class ConfigSetStaffButton(discord.ui.Button):
sel.callback = _cb
view.add_item(sel)
await interaction.response.send_message("Selectionnez le role staff :", view=view, ephemeral=True)
await interaction.response.send_message("Sélectionnez le rôle staff :", view=view, ephemeral=True)
class ConfigSetLogButton(discord.ui.Button):
@ -137,7 +135,7 @@ class ConfigSetLogButton(discord.ui.Button):
sel.callback = _cb
view.add_item(sel)
await interaction.response.send_message("Selectionnez le canal de logs :", view=view, ephemeral=True)
await interaction.response.send_message("Sélectionnez le canal de logs :", view=view, ephemeral=True)
class TicketManagementView(discord.ui.LayoutView):
@ -147,10 +145,7 @@ class TicketManagementView(discord.ui.LayoutView):
container.add_item(discord.ui.TextDisplay("### Gestion"))
container.add_item(discord.ui.ActionRow(ClaimButton(), TransferButton(), LockButton()))
container.add_item(discord.ui.Separator())
container.add_item(discord.ui.TextDisplay("### Informations"))
container.add_item(discord.ui.ActionRow(PriorityButton(), AddMemberButton(), StatsButton()))
container.add_item(discord.ui.Separator())
container.add_item(discord.ui.ActionRow(CloseButton()))
container.add_item(discord.ui.ActionRow(AddMemberButton(), CloseButton()))
self.add_item(container)
@ -210,17 +205,17 @@ class TicketSystem(commands.Cog):
config.panel_message_id = msg.id
storage.save_config(config)
container = discord.ui.Container()
container.add_item(discord.ui.TextDisplay(f"## Panneau envoye\nCanal : {channel.mention}\nStatut : Actif"))
container.add_item(discord.ui.TextDisplay(f"## Panneau envoyé\nCanal : {channel.mention}\nStatut : Actif"))
resp_view = discord.ui.LayoutView()
resp_view.add_item(container)
await interaction.response.send_message(view=resp_view, ephemeral=True)
@ticket.command(name="config", description="Configuration du systeme de tickets")
@ticket.command(name="config", description="Configuration du système de tickets")
@app_commands.checks.has_permissions(manage_guild=True)
async def ticket_config(self, interaction: discord.Interaction):
config = storage.get_config(interaction.guild_id)
cats = "\n".join(f"- {c.emoji} **{c.name}**" for c in config.categories) or "*Aucune*"
staff_line = f"**Role staff :** <@&{config.staff_role_id}>\n" if config.staff_role_id else ""
staff_line = f"**Rôle staff :** <@&{config.staff_role_id}>\n" if config.staff_role_id else ""
log_line = f"**Canal de logs :** <#{config.log_channel_id}>\n" if config.log_channel_id else ""
container = discord.ui.Container()
container.add_item(