Checkpoint: ✅ Amélioration visuelle du bouton de test de rappels
- Ajout d'un badge de compteur indiquant le nombre de rappels actifs (ex: "1") - Désactivation visuelle du bouton pour les séquences sans rappels actifs (icône grisée) - Tooltip informatif adapté selon le contexte (nombre de rappels ou message d'erreur) - Amélioration de l'expérience utilisateur avec feedback visuel clair
This commit is contained in:
@@ -871,10 +871,22 @@ export default function AdminSequences() {
|
|||||||
variant="ghost"
|
variant="ghost"
|
||||||
size="sm"
|
size="sm"
|
||||||
onClick={() => handleTestRappel(sequence.id, sequence)}
|
onClick={() => handleTestRappel(sequence.id, sequence)}
|
||||||
disabled={testerRappelMutation.isPending}
|
disabled={testerRappelMutation.isPending || (sequence.nbRappelsActifs === 0)}
|
||||||
title="Tester l'envoi d'un rappel"
|
title={
|
||||||
|
sequence.nbRappelsActifs === 0
|
||||||
|
? "Aucun rappel actif configuré pour cette séquence"
|
||||||
|
: `Tester l'envoi de ${sequence.nbRappelsActifs} rappel(s) actif(s)`
|
||||||
|
}
|
||||||
|
className="relative"
|
||||||
>
|
>
|
||||||
<Send className="h-4 w-4 text-green-600" />
|
<Send className={`h-4 w-4 ${
|
||||||
|
sequence.nbRappelsActifs === 0 ? 'text-gray-300' : 'text-green-600'
|
||||||
|
}`} />
|
||||||
|
{sequence.nbRappelsActifs > 0 && (
|
||||||
|
<span className="absolute -top-1 -right-1 flex h-4 w-4 items-center justify-center rounded-full bg-green-600 text-[10px] font-bold text-white">
|
||||||
|
{sequence.nbRappelsActifs}
|
||||||
|
</span>
|
||||||
|
)}
|
||||||
</Button>
|
</Button>
|
||||||
<Button
|
<Button
|
||||||
variant="ghost"
|
variant="ghost"
|
||||||
|
|||||||
@@ -405,7 +405,12 @@ export const appRouter = router({
|
|||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
return { ...seq, dates: datesAvecRappels, nbInscrits };
|
// Compter le nombre de rappels actifs pour cette séquence
|
||||||
|
const nbRappelsActifs = datesAvecRappels.reduce((total, date) => {
|
||||||
|
return total + (date.rappels?.filter((r: any) => r.actif).length || 0);
|
||||||
|
}, 0);
|
||||||
|
|
||||||
|
return { ...seq, dates: datesAvecRappels, nbInscrits, nbRappelsActifs };
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
return sequencesAvecDates;
|
return sequencesAvecDates;
|
||||||
|
|||||||
2
todo.md
2
todo.md
@@ -1192,3 +1192,5 @@
|
|||||||
- [x] Modifier le test de rappels pour envoyer un email par inscrit à l'adresse de test avec indicateur de progression
|
- [x] Modifier le test de rappels pour envoyer un email par inscrit à l'adresse de test avec indicateur de progression
|
||||||
- [x] Ajouter un compteur de progression X/Y dans l'indicateur visuel du test de rappels
|
- [x] Ajouter un compteur de progression X/Y dans l'indicateur visuel du test de rappels
|
||||||
- [x] Corriger l'erreur 'Aucun rappel actif configuré' lors du test de rappels
|
- [x] Corriger l'erreur 'Aucun rappel actif configuré' lors du test de rappels
|
||||||
|
- [x] Désactiver visuellement le bouton de test pour les séquences sans rappels actifs
|
||||||
|
- [x] Ajouter un badge de compteur sur le bouton de test indiquant le nombre de rappels actifs
|
||||||
|
|||||||
Reference in New Issue
Block a user