nakarte

Source code of https://map.sikmir.ru (fork)
git clone git://git.sikmir.ru/nakarte
Log | Files | Refs | LICENSE

commit 3752a244b8b8b6b94aa6ecea74cc062544a61fa9
parent 928ce5d7d48e18024a1c19957c1c44b8381f201f
Author: Sergey Orlov <wladimirych@gmail.com>
Date:   Sat,  8 Aug 2020 11:30:12 +0200

tracks: fix reading unicode chars in endomodo titles. Fixes #503

Diffstat:
Msrc/lib/leaflet.control.track-list/lib/services/endomondo.js | 8+++-----
Mtest/track_load_data/testcases/endomondo_with_title.json | 2+-
2 files changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/lib/leaflet.control.track-list/lib/services/endomondo.js b/src/lib/leaflet.control.track-list/lib/services/endomondo.js @@ -23,7 +23,7 @@ class Endomondo extends BaseService { return [{ url: urlViaCorsProxy(`https://www.endomondo.com/rest/v1/users/${userId}/workouts/${trackId}`), options: { - responseType: 'binarystring', + responseType: 'json', isResponseSuccess: (xhr) => (xhr.status === 200 || xhr.status === 404) }, @@ -36,10 +36,8 @@ class Endomondo extends BaseService { return [{error: 'Invalid link or user disabled viewing this workout track'}]; } - let data; - try { - data = JSON.parse(response.responseBinaryText); - } catch (e) { + const data = response.responseJSON; + if (!data) { return [{name: 'Endomondo activity', error: 'UNSUPPORTED'}]; } if (!data.points || !data.points.points) { diff --git a/test/track_load_data/testcases/endomondo_with_title.json b/test/track_load_data/testcases/endomondo_with_title.json @@ -13,7 +13,7 @@ ], "geodata": [ { - "name": "2012-05-09, 0.0 km: Test - Тест - ZkouÅ¡ka", + "name": "2012-05-09, 0.0 km: Test - Тест - Zkouška", "tracks": [ [ {"lat": 56.5269457083, "lng": 28.9624827169},