V2.0.1 : VOICI LES MODIFICATIONS MAJEURS APPRTÉES DANS CETTE VERSION :

-> REFONTE DU DESIGN DES AFFICHEURS CLASSIQUES (GÉNÉRAL + QUAIS)
-> IMPLÉMENTATION DU DESIGN AFL : GÉNÉRAL ET QUAIS

-> CHOIX DE LA SÉLECTION DES TYPES D'AFFICHEURS (GÉNÉRAL / QUAIS) UNE FOIS LE TYPE D'AFFICHEUR SÉLECTIONNÉS
This commit is contained in:
Ferrovia committed 2026-07-10 01:49:39 +02:00
1 parent 68f0bc2807
commit 71822823f2
9 files changed
+189 -497

No files matched your search

+7 -9
View File
@@ -109,18 +109,16 @@ export default function useAnnonceSonoreRealtime(gareId, affType = null, quaiNam
// Si c'est une annonce qu'on n'a pas encore vue
if (latest.id !== lastAnnonceIdRef.current) {
const now = new Date();
const createdAt = new Date(latest.created_at);
const diffSeconds = (now.getTime() - createdAt.getTime()) / 1000;
// On ne joue l'annonce que si elle a été insérée il y a moins de 15 secondes
if (diffSeconds < 15) {
// S'il s'agit du premier chargement, on mémorise juste l'ID sans la jouer
// sauf si on veut vraiment utiliser diffSeconds, mais pour éviter les problèmes d'horloge
// on se fie au fait que lastAnnonceIdRef.current passe de null à l'ID.
if (lastAnnonceIdRef.current === null) {
lastAnnonceIdRef.current = latest.id;
} else {
// C'est une NOUVELLE annonce apparue pendant qu'on polle
console.debug('[useAnnonceSonoreRealtime] Annonce spontanée détectée :', latest);
lastAnnonceIdRef.current = latest.id;
playAnnonce(latest);
} else {
// Si elle est trop vieille, on l'ignore silencieusement
lastAnnonceIdRef.current = latest.id;
}
}
}