summaryrefslogtreecommitdiff
path: root/chimere/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'chimere/views.py')
-rw-r--r--chimere/views.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/chimere/views.py b/chimere/views.py
index 9b25458..a417fad 100644
--- a/chimere/views.py
+++ b/chimere/views.py
@@ -760,6 +760,19 @@ def route(request, area_name, lon1, lat1, lonlat_steps, lon2, lat2,
steps = [(steps[i*2], steps[i*2+1]) for i in range(len(steps)/2)]
except ValueError:
return HttpResponse('no results')
+
+ # prevent incoherent transport and speed
+ if transport not in dict(settings.CHIMERE_ROUTING_TRANSPORT):
+ transport = settings.CHIMERE_ROUTING_TRANSPORT[0][0]
+ if speed:
+ speed = unicode(speed)
+ available_speed = [unicode(sp)
+ for sp, lbl in settings.CHIMERE_ROUTING_SPEEDS[transport]]
+ if speed not in available_speed:
+ speed = None
+ if not speed:
+ speed = settings.CHIMERE_ROUTING_SPEEDS[transport][0][0]
+
jsons, desc, total = router.route(lon1, lat1, lon2, lat2, steps=steps,
transport=transport, speed=speed)
if not jsons: