From 4a79b916807fe7592eb4d989638c286d3ba3339a Mon Sep 17 00:00:00 2001 From: Jannis R Date: Tue, 5 Feb 2019 19:07:19 +0100 Subject: [PATCH] parseLocation: L param as fallback ID --- lib/request.js | 2 +- package.json | 2 +- parse/location.js | 9 +++++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/lib/request.js b/lib/request.js index c651d884..632ff9de 100644 --- a/lib/request.js +++ b/lib/request.js @@ -6,7 +6,7 @@ const DEBUG = process.env.DEBUG === 'hafas-client' const {join} = require('path') const createHash = require('create-hash') const captureStackTrace = DEV ? require('capture-stack-trace') : () => {} -const {stringify} = require('query-string') +const {stringify} = require('qs') const Promise = require('pinkie-promise') const {fetch} = require('fetch-ponyfill')({Promise}) diff --git a/package.json b/package.json index 1b28861e..da128062 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "p-retry": "^2.0.0", "p-throttle": "^2.1.0", "pinkie-promise": "^2.0.1", - "query-string": "^6.0.0", + "qs": "^6.6.0", "slugg": "^1.2.0", "vbb-parse-line": "^0.3.1", "vbb-parse-ticket": "^0.2.1", diff --git a/parse/location.js b/parse/location.js index c1e8a128..95bf7cf6 100644 --- a/parse/location.js +++ b/parse/location.js @@ -1,5 +1,7 @@ 'use strict' +const {parse} = require('qs') + const POI = 'P' const STATION = 'S' const ADDRESS = 'A' @@ -14,10 +16,13 @@ const parseLocation = (profile, opt, {lines}, l) => { res.longitude = l.crd.x / 1000000 } + const lid = parse(l.lid, {delimiter: '@'}) + const id = (l.extId || lid.L || '').replace(leadingZeros, '') || null + if (l.type === STATION) { const stop = { type: l.isMainMast ? 'station' : 'stop', - id: (l.extId || '').replace(leadingZeros, ''), + id, name: l.name ? profile.parseStationName(l.name) : null, location: 'number' === typeof res.latitude ? res : null } @@ -41,7 +46,7 @@ const parseLocation = (profile, opt, {lines}, l) => { if (l.type === ADDRESS) res.address = l.name else res.name = l.name - if (l.type === POI) res.id = l.extId && l.extId.replace(leadingZeros, '') || null + if (l.type === POI) res.id = id return res }