@@ -173,14 +173,18 @@ function parseSchedulesData(data) {
173173 journey . MonitoredCall ?. VehicleAtStop === false &&
174174 journey . MonitoredCall ?. ExpectedDepartureTime === undefined ;
175175
176+ // Récupérer VehicleAtStop
177+ const vehicleAtStop = journey . MonitoredCall ?. VehicleAtStop === true ;
178+
176179 if ( aimedTime || expectedTime ) {
177180 schedules . push ( {
178181 destination : destinationName ,
179182 aimedTime : aimedTime ,
180183 expectedTime : expectedTime ,
181184 platform : platform ,
182185 isCancelled : isCancelled ,
183- journeyNote : journeyNote
186+ journeyNote : journeyNote ,
187+ vehicleAtStop : vehicleAtStop
184188 } ) ;
185189 }
186190 } ) ;
@@ -264,6 +268,7 @@ export function generateSchedulesElement(schedules, routeType) {
264268 const expectedTime = schedule . expectedTime ? new Date ( schedule . expectedTime ) : null ;
265269 const isCancelled = schedule . isCancelled || false ;
266270 const journeyNote = schedule . journeyNote || null ;
271+ const vehicleAtStop = schedule . vehicleAtStop || false ;
267272
268273 // Utiliser expectedTime si disponible, sinon aimedTime
269274 const displayTime = expectedTime || aimedTime ;
@@ -295,7 +300,15 @@ export function generateSchedulesElement(schedules, routeType) {
295300 const tdTime = document . createElement ( 'td' ) ;
296301 tdTime . className = 'p-1 whitespace-nowrap' ;
297302 if ( isCancelled ) tdTime . className += ' line-through text-red-600' ;
298- tdTime . textContent = timeStr ;
303+
304+ // Créer un conteneur flex pour tout mettre sur une ligne
305+ const timeContainer = document . createElement ( 'div' ) ;
306+ timeContainer . className = 'flex items-center gap-1' ;
307+
308+ // Ajouter l'heure
309+ const timeSpan = document . createElement ( 'span' ) ;
310+ timeSpan . textContent = timeStr ;
311+ timeContainer . appendChild ( timeSpan ) ;
299312
300313 // Ajouter le retard en orange si applicable
301314 if ( ( routeType === 'RER' || routeType === 'TER' || routeType === 'Transilien' ) &&
@@ -304,12 +317,24 @@ export function generateSchedulesElement(schedules, routeType) {
304317 if ( delayMinutes > 0 ) {
305318 const expectedTimeStr = expectedTime . toLocaleTimeString ( 'fr-FR' , { hour : '2-digit' , minute : '2-digit' } ) ;
306319 const delaySpan = document . createElement ( 'span' ) ;
307- delaySpan . className = 'text-orange-500 font-semibold ml-1 ' ;
320+ delaySpan . className = 'text-orange-500 font-semibold' ;
308321 delaySpan . textContent = expectedTimeStr ;
309- tdTime . appendChild ( delaySpan ) ;
322+ timeContainer . appendChild ( delaySpan ) ;
310323 }
311324 }
312325
326+ // Ajouter l'icône train si vehicleAtStop est true
327+ if ( vehicleAtStop ) {
328+ const trainIcon = document . createElement ( 'img' ) ;
329+ trainIcon . src = '/webtrain/train_at_station.svg' ;
330+ trainIcon . alt = 'Train à quai' ;
331+ trainIcon . className = 'w-3 h-3' ;
332+ trainIcon . title = 'Train à quai' ;
333+ timeContainer . appendChild ( trainIcon ) ;
334+ }
335+
336+ tdTime . appendChild ( timeContainer ) ;
337+
313338 tr . appendChild ( tdTime ) ;
314339
315340 // Colonne destination
0 commit comments