commit 25cc7c825db2d50c218220844b6c0093f5a91052
parent 4e9577fd4432a5c7c2892e0e9785088ada201e39
Author: Sergej Orlov <wladimirych@gmail.com>
Date: Mon, 26 Nov 2018 23:56:21 +0100
[tracks] fixed loading tracks from localStorage, was broken after refactor
Diffstat:
3 files changed, 22 insertions(+), 19 deletions(-)
diff --git a/src/lib/leaflet.control.track-list/lib/parsers/nktk.js b/src/lib/leaflet.control.track-list/lib/parsers/nktk.js
@@ -323,4 +323,17 @@ function parseNktkSequence(s) {
return geodataArray;
}
-export {saveNktk, parseNktkSequence, parseTrackUrlData};
-\ No newline at end of file
+function parseNktkParam(s) {
+ let i = s.indexOf('#');
+ if (i === -1) {
+ return null;
+ }
+ i = s.indexOf('nktk=', i + 1);
+ if (i === -1) {
+ return null;
+ }
+ s = s.substring(i + 5);
+ return parseNktkSequence(s)
+}
+
+export {saveNktk, parseNktkParam, parseTrackUrlData, parseNktkSequence};
+\ No newline at end of file
diff --git a/src/lib/leaflet.control.track-list/lib/services/nakarte.js b/src/lib/leaflet.control.track-list/lib/services/nakarte.js
@@ -1,5 +1,5 @@
import BaseService from './baseService';
-import {parseNktkSequence, parseTrackUrlData} from '../parsers/nktk';
+import {parseNktkParam, parseNktkSequence, parseTrackUrlData} from '../parsers/nktk';
import config from 'config';
class NakarteTrack extends BaseService {
@@ -19,22 +19,12 @@ class NakarteTrack extends BaseService {
class NakarteNktk extends BaseService {
constructor(url) {
- super(url);
- this._data = null;
- let i = url.indexOf('#');
- if (i === -1) {
- return;
- }
- i = url.indexOf('nktk=', i + 1);
- if (i === -1) {
- return;
- }
- this._data = url.substring(i + 5);
-
+ super(null);
+ this._geoData = parseNktkParam(url);
}
isOurUrl() {
- return !!this._data;
+ return !!this._geoData;
}
requestOptions() {
@@ -42,7 +32,7 @@ class NakarteNktk extends BaseService {
}
parseResponse() {
- return parseNktkSequence(this._data);
+ return this._geoData;
}
}
diff --git a/src/lib/leaflet.control.track-list/track-list.localstorage.js b/src/lib/leaflet.control.track-list/track-list.localstorage.js
@@ -1,6 +1,6 @@
import './track-list'
import L from 'leaflet';
-import parseGeoFile from './lib/parseGeoFile';
+import {parseNktkParam} from './lib/parsers/nktk';
import safeLocalStorage from 'lib/safe-localstorage';
import logging from 'lib/logging';
@@ -80,7 +80,7 @@ L.Control.TrackList.include({
safeLocalStorage.removeItem(key);
if (s) {
logging.captureBreadcrumb({message: 'load track from localStorage'});
- geodata = parseGeoFile('', s);
+ geodata = parseNktkParam(s);
this.addTracksFromGeodataArray(geodata, {localStorage: {key, value: s}});
}
}