summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
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
commit969aad6fdfa61831b456c2a3cabd17596f53d097 (patch)
tree92645954096814275dc0dfbdb9fe72a8bbb0859c
parent8759cf73decdfbe4413a9b9d52e5926ac5c8f7d1 (diff)
downloadChimère-2.0-RC2.tar.bz2
Chimère-2.0-RC2.zip
Fix GPX upload for userv2.0-RC2
-rw-r--r--chimere/models.py11
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]}}'