RELEASE V5.5.0 : Voici les modifications apportées :

-> REFONTE TOTALE DE TOUS LES AFFICHEURS CLASSIQUES + QUAIS

FONCTIONNALITÉS EN COURS DE DÉVELOPPEMENT :

-> ADAPTABILITÉ EN FONCTION DES SITUATIONS
This commit is contained in:
mathis committed 2026-08-31 02:02:46 +02:00
1 parent b90c699302
commit 9c6ac798f1
26 files changed
+3040 -2190

No files matched your search

+15 -12
View File
@@ -550,6 +550,14 @@ async function fetchGtfsStationTimetable(uic, mode = 'departs') {
resultList = remainingToday;
}
if (resultList.length === 0) {
resultList = (enrichedToday.length > 0 ? enrichedToday : rawList.map((t, idx) => mapTrain(t, idx, false))).sort((a, b) => {
const aHM = (mode === 'arrivees' ? a._arrHM : a._depHM) || 0;
const bHM = (mode === 'arrivees' ? b._arrHM : b._depHM) || 0;
return aHM - bHM;
});
}
return resultList;
} catch (err) {
console.warn('[sncfApi] Erreur de chargement GTFS station:', err);
@@ -587,19 +595,14 @@ export async function getSncfTimetable({ gareName, mode = 'departs', quai = null
finalTrains = [];
}
// 3. Filtrage par quai si demandé
// 3. Filtrage strict par quai si demandé
if (quai) {
const normQuai = String(quai).trim().toLowerCase();
const matching = finalTrains.filter(t => String(t.quai || t.voie).trim().toLowerCase() === normQuai);
if (matching.length > 0) {
finalTrains = matching;
} else if (finalTrains.length > 0) {
finalTrains[0].quai = quai;
finalTrains[0].voie = quai;
finalTrains[0].quai_reel = quai;
finalTrains[0]._displayPlatform = quai;
finalTrains = [finalTrains[0]];
}
const cleanP = (p) => String(p || '').toLowerCase().replace(/^(?:voie|quai|track|platform)\s*/i, '').replace(/\s+/g, '').trim();
const targetP = cleanP(quai);
finalTrains = finalTrains.filter(t => {
const q = cleanP(t.quai || t.voie || t.quai_reel || t._displayPlatform);
return Boolean(q && q === targetP);
});
}
return { data: finalTrains, error: null };