From 8b370d277dc1e4d15c3b9053810778564797c753 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Milan=20P=C3=A4ssler?= Date: Fri, 11 Sep 2020 20:00:06 +0200 Subject: [PATCH] add train type information to journeysView --- client/js/journeysView.js | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/client/js/journeysView.js b/client/js/journeysView.js index c8fca23..44c68a1 100644 --- a/client/js/journeysView.js +++ b/client/js/journeysView.js @@ -68,7 +68,8 @@ const journeyOverviewTemplate = (data, key) => { let departure = data.journeys[key].legs[0].departure; let arrival = data.journeys[key].legs[data.journeys[key].legs.length - 1].arrival; let changes = 0; - let products = []; + let products = {}; + let productsString = ""; let changesDuration = 0; let cancelled = false; @@ -82,10 +83,18 @@ const journeyOverviewTemplate = (data, key) => { if (leg.isWalking || leg.isTransfer) continue; changes = changes+1; - products.push(leg.line.productName); + if (!products[leg.line.productName]) products[leg.line.productName] = []; + if (leg.line && leg.line.trainTypeShort) products[leg.line.productName].push(leg.line.trainTypeShort); } - products = [...new Set(products)]; + productsString = Object.entries(products).map(([prod, types]) => { + if (types.length >= 2) { + prod += " (" + types.join(", ") + ")"; + } else if (types.length) { + prod += " " + types[0]; + } + return prod; + }).join(", "); return html` go('/'+data.reqId + '/' + key)}"> @@ -93,7 +102,7 @@ const journeyOverviewTemplate = (data, key) => { ${timeTemplate(arrival, 'arrival')} ${formatDuration(duration)} ${changes-1} - ${products.join(', ')} + ${productsString} `; }