diff options
author | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2009-01-11 19:02:30 +0000 |
---|---|---|
committer | etienne <etienne@9215b0d5-fb2c-4bbd-8d3e-bd2e9090e864> | 2009-01-11 19:02:30 +0000 |
commit | a4bc9f49559db59eb8ce4208f3ad49b262a5d05f (patch) | |
tree | 58299c2ed9f08faec8506e0b433ea6aacbd19298 /main/views.py | |
parent | 03c7e15227fb84b94d9f870aac69d7d54b61889a (diff) | |
download | Chimè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.py | 37 |
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 |