summaryrefslogtreecommitdiff
path: root/chimere/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-31 15:31:30 +0100
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-31 15:31:30 +0100
commitf25285634613ff5beeb0c360d817835738e72b40 (patch)
treea63fcd260fe641ea27f74291ca2ed36e6a816a74 /chimere/views.py
parentb845195fda9c4e9fb79c3f6272d8de202822f57e (diff)
downloadChimère-f25285634613ff5beeb0c360d817835738e72b40.tar.bz2
Chimère-f25285634613ff5beeb0c360d817835738e72b40.zip
JS: preload icon images
Diffstat (limited to 'chimere/views.py')
-rw-r--r--chimere/views.py26
1 files changed, 22 insertions, 4 deletions
diff --git a/chimere/views.py b/chimere/views.py
index edd0ac4..03f75a6 100644
--- a/chimere/views.py
+++ b/chimere/views.py
@@ -39,7 +39,7 @@ from django.db.models import Q
from django.http import HttpResponseRedirect, HttpResponse
from django.shortcuts import redirect, render_to_response
from django.template import loader, RequestContext, defaultfilters
-from django.utils import simplejson
+from django.utils import simplejson as json
from django.utils.http import urlquote
from django.utils.translation import ugettext as _
@@ -380,7 +380,7 @@ def processRouteFile(request, area_name='', file_id=None):
route = route_file.route
if not route:
return HttpResponse(status=500)
- return HttpResponse('('+simplejson.dumps({'wkt':route,
+ return HttpResponse('(' + json.dumps({'wkt':route,
'file_id':file_id})+')',
'application/javascript', status=200)
except OSError as e:
@@ -605,10 +605,28 @@ def getGeoObjects(request, area_name, category_ids, status):
data = '{"type": "FeatureCollection", "features":[%s]}' % ",".join(jsons)
return HttpResponse(data)
+def get_all_categories(request, area_name=None):
+ '''
+ Get all available categories in JSON
+ '''
+ context_data, redir = get_base_response(area_name)
+ area = context_data["area"]
+ subcategories = []
+ if area:
+ subcategories = list(area.getCategories('A',
+ area_name=context_data['area_name']))
+ else:
+ categories = SubCategory.getAvailable()
+ for cat, subcats in categories:
+ subcategories += subcats
+ subcats = [subcat.getJSONDict() for subcat in subcategories]
+ jsons = json.dumps({'categories':subcats})
+ return HttpResponse(jsons)
+
def get_available_categories(request, area_name=None, area=None, status='A',
force=None):
'''
- Get categories for a designed area
+ Get category menu for a designed area
'''
context_data, redir = get_base_response(area_name)
area = context_data["area"]
@@ -718,7 +736,7 @@ def route(request, area_name, lon1, lat1, lonlat_steps, lon2, lat2,
transport=transport, speed=speed)
if not jsons:
return HttpResponse('no results')
- jsonencoder = simplejson.JSONEncoder()
+ jsonencoder = json.JSONEncoder()
total = jsonencoder.encode(total)
desc = jsonencoder.encode(desc)