Le custom_id des boutons de catégorie incluait un snowflake basé sur
l'heure courante, ce qui changeait à chaque affichage du message et
empêchait Discord de matcher le bouton enregistré.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Le bug faisait que les rôles staff ajoutés via le panneau d'une
catégorie spécifique étaient incorrectement stockés dans config_roles
au lieu de staff_roles de la catégorie. Corrige PermissionConfigView
pour gérer correctement config_type="cat_{id}".
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Les boutons ticket_create, ticket_my_tickets et ticket_analytics avaient
leur callback assigné directement dans TicketPanelView ET étaient aussi
routés via on_interaction. Cela provoquait une double réponse
d'interaction → erreur 40060 "Interaction has already been acknowledged".
Suppression des assignations de callback directes pour ces trois boutons.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Ajout catégorie recrutement avec questions personnalisées
- Modal dynamique affichant les questions lors de la création
- Envoi des réponses dans un salon staff configurable
- Fermeture avec boutons Accepter/Refuser et envoi DM automatique au candidat
- Mise à jour des modèles TicketCategory et TicketData
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>