diff options
Diffstat (limited to 'static')
| -rw-r--r-- | static/hikers.js | 37 | ||||
| -rw-r--r-- | static/style.css | 3 |
2 files changed, 40 insertions, 0 deletions
diff --git a/static/hikers.js b/static/hikers.js new file mode 100644 index 0000000..f0dd1e0 --- /dev/null +++ b/static/hikers.js @@ -0,0 +1,37 @@ +var map = L.map('map').setView([40.721, -73.974], 17); +// add an OpenStreetMap tile layer +L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', { + attribution: '© <a href="http://osm.org/copyright">OpenStreetMap</a> contributors' +}).addTo(map); + +// // add a marker in the given location, attach some popup content to it and open the popup +// L.marker([51.5, -0.09]).addTo(map) +// .bindPopup('A pretty CSS3 popup. <br> Easily customizable.') +// .openPopup(); + + +function parsexml(text) { + parser = new DOMParser() + xmlDoc = parser.parseFromString(text, "text/xml"); + nodelist = xmlDoc.getElementsByTagName('trkpt'); + r = []; + for(i = 0; i < nodelist.length; i++) { + e = nodelist[i] + r[i] = L.latLng(e.getAttribute('lat'), e.getAttribute('lon')); + } + return r; +} + +function handleFile(evt) { + var file = evt.target.files[0]; // FileList object + var reader = new FileReader(); + reader.onload = function() { + console.log(this.result); + var polyline = L.polyline(parsexml(this.result), + {color: 'red'}).addTo(map); + map.fitBounds(polyline.getBounds()); + } + reader.readAsText(file); +} + +document.getElementById('files').addEventListener('change', handleFile, false); diff --git a/static/style.css b/static/style.css new file mode 100644 index 0000000..6d3c383 --- /dev/null +++ b/static/style.css @@ -0,0 +1,3 @@ +/* #map { */ +/* height: 180px; */ +/* } */
\ No newline at end of file |
