summaryrefslogtreecommitdiff
path: root/main/views.py
diff options
context:
space:
mode:
authoretienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864>2009-01-11 19:02:30 +0000
committeretienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864>2009-01-11 19:02:30 +0000
commita4bc9f49559db59eb8ce4208f3ad49b262a5d05f (patch)
tree58299c2ed9f08faec8506e0b433ea6aacbd19298 /main/views.py
parent03c7e15227fb84b94d9f870aac69d7d54b61889a (diff)
downloadChimère-a4bc9f49559db59eb8ce4208f3ad49b262a5d05f.tar.bz2
Chimère-a4bc9f49559db59eb8ce4208f3ad49b262a5d05f.zip
First implementation of route management
git-svn-id: http://www.peacefrogs.net/svn/chimere/trunk@10 9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864
Diffstat (limited to 'main/views.py')
-rw-r--r--main/views.py37
1 files changed, 30 insertions, 7 deletions
diff --git a/main/views.py b/main/views.py
index f0cc604..a7a4da7 100644
--- a/main/views.py
+++ b/main/views.py
@@ -77,7 +77,7 @@ def edit(request):
# set the submited status
marker.status = 'S'
marker.save()
- return HttpResponseRedirect('/chimere/submited')
+ return HttpResponseRedirect('/chimere/submited/edit')
else:
# An unbound form
form = MarkerForm()
@@ -88,7 +88,7 @@ def edit(request):
'media_path':settings.MEDIA_URL,
'form':form,
'extra_head':form.media,
- 'sub_categories':SubCategory.getAvailable(),
+ 'sub_categories':SubCategory.getAvailable(['M', 'B']),
'point_widget':PointChooserWidget().render('point', None),
'properties':declared_fields
}
@@ -111,18 +111,18 @@ def editRoute(request):
# set the submited status
route.status = 'S'
route.save()
- return HttpResponseRedirect('/chimere/submited')
+ return HttpResponseRedirect('/chimere/submited/edit_route')
else:
# An unbound form
form = RouteForm()
# get the « manualy » declared_fields. Ie: properties
declared_fields = form.declared_fields.keys()
- response_dct = {'actions':actions, 'action_selected':'edit-route',
+ response_dct = {'actions':actions, 'action_selected':'edit_route',
'error_message':'',
'media_path':settings.MEDIA_URL,
'form':form,
'extra_head':form.media,
- 'sub_categories':SubCategory.getAvailable(),
+ 'sub_categories':SubCategory.getAvailable(['R', 'B']),
'route_widget':RouteChooserWidget().render('route', None),
'properties':declared_fields
}
@@ -139,11 +139,12 @@ def welcome(request, display=None):
response_dct['news_lst'] = News.objects.filter(available=True)
return loader.render_to_string('welcome.html', response_dct)
-def submited(request):
+def submited(request, action):
"""
Successful submission page
"""
- response_dct = {'actions':actions, 'action_selected':'edit',
+ print action
+ response_dct = {'actions':actions, 'action_selected':action,
'media_path':settings.MEDIA_URL,}
return render_to_response('submited.html', response_dct)
@@ -174,3 +175,25 @@ def getMarkers(request, category_ids):
data = '{"type": "FeatureCollection", "features":[%s]}' % \
",".join([marker.getGeoJSON() for marker in markers])
return HttpResponse(data)
+
+def getGeoObjects(request, category_ids):
+ '''
+ Get the JSON for a route
+ '''
+ try:
+ query = Route.objects.filter(status='A',
+ subcategory__in=category_ids.split('_'))
+ except:
+ return HttpResponse('no results')
+ geo_objects = list(query)
+ try:
+ query = Marker.objects.filter(status='A',
+ subcategory__in=category_ids.split('_'))
+ except:
+ return HttpResponse('no results')
+ geo_objects += list(query)
+ if not geo_objects:
+ return HttpResponse('no results')
+ data = '{"type": "FeatureCollection", "features":[%s]}' % \
+ ",".join([geo_object.getGeoJSON() for geo_object in geo_objects])
+ return HttpResponse(data) \ No newline at end of file