Enhance challenge management and badge components: Implement event dispatch for refreshing challenge badges after various actions (acceptance, rejection, deletion, cancellation) in ChallengeManagement and ChallengesSection. Update ChallengeBadge to listen for refresh events, ensuring accurate challenge count display and improved user experience.
All checks were successful
Deploy with Docker Compose / deploy (push) Successful in 10m9s

This commit is contained in:
Julien Froidefond
2025-12-17 10:44:56 +01:00
parent 67b3d9e2a9
commit 1f59cc7f9d
3 changed files with 29 additions and 17 deletions

View File

@@ -90,6 +90,8 @@ export default function ChallengesSection({
setSuccessMessage("Défi créé avec succès !");
setShowCreateForm(false);
fetchChallenges();
// Rafraîchir le badge des défis
window.dispatchEvent(new Event("refreshChallenges"));
setTimeout(() => setSuccessMessage(null), 5000);
} else {
setErrorMessage(result.error || "Erreur lors de la création du défi");
@@ -107,6 +109,8 @@ export default function ChallengesSection({
"Défi accepté ! En attente de désignation du gagnant."
);
fetchChallenges();
// Rafraîchir le badge des défis
window.dispatchEvent(new Event("refreshChallenges"));
setTimeout(() => setSuccessMessage(null), 5000);
} else {
setErrorMessage(result.error || "Erreur lors de l'acceptation");
@@ -122,6 +126,8 @@ export default function ChallengesSection({
if (result.success) {
setSuccessMessage("Défi annulé");
fetchChallenges();
// Rafraîchir le badge des défis
window.dispatchEvent(new Event("refreshChallenges"));
setTimeout(() => setSuccessMessage(null), 5000);
} else {
setErrorMessage(result.error || "Erreur lors de l'annulation");