diff options
author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-07-19 00:46:11 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-07-19 00:46:11 +0200 |
commit | 969aad6fdfa61831b456c2a3cabd17596f53d097 (patch) | |
tree | 92645954096814275dc0dfbdb9fe72a8bbb0859c | |
parent | 8759cf73decdfbe4413a9b9d52e5926ac5c8f7d1 (diff) | |
download | Chimère-969aad6fdfa61831b456c2a3cabd17596f53d097.tar.bz2 Chimère-969aad6fdfa61831b456c2a3cabd17596f53d097.zip |
Fix GPX upload for userv2.0-RC2
-rw-r--r-- | chimere/models.py | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/chimere/models.py b/chimere/models.py index e54edfc..381bf1f 100644 --- a/chimere/models.py +++ b/chimere/models.py @@ -22,7 +22,7 @@ Models description """ import os, string, re import simplejson as json -import lxml.etree as ElementTree +from lxml import etree from datetime import datetime, timedelta from subprocess import Popen, PIPE @@ -593,12 +593,13 @@ class RouteFile(models.Model): def route(self): if not self.simplified_file: return - mainNS = string.Template("{http://www.topografix.com/GPX/1/0}$tag") - trkpt = mainNS.substitute(tag="trkpt") + file_name = settings.MEDIA_ROOT + self.simplified_file.name - et = ElementTree.parse(open(file_name)) + tree = etree.parse(file_name) pts = [] - for pt in et.findall("//" + trkpt): + for pt in tree.getiterator(): + if not pt.tag.endswith('trkpt'): + continue pts.append((pt.get("lon"), pt.get("lat"))) geojson_tpl = u'{"type":"Feature", "geometry":{ "type": "LineString", '\ '"coordinates":[%s]}}' |