summaryrefslogtreecommitdiff
path: root/chimere/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-03-15 19:31:19 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-03-15 19:31:19 +0100
commit350a58d927d93c40b7508e46212eb20923bf36bb (patch)
tree287c78ae4681f9a6469b18f7e8e456f783e9b801 /chimere/views.py
parenta53fb8d6525fa93f0e131a8a10ed3cae23a6c1f0 (diff)
downloadChimère-350a58d927d93c40b7508e46212eb20923bf36bb.tar.bz2
Chimère-350a58d927d93c40b7508e46212eb20923bf36bb.zip
Fix categories in detail
Diffstat (limited to 'chimere/views.py')
-rw-r--r--chimere/views.py13
1 files changed, 9 insertions, 4 deletions
diff --git a/chimere/views.py b/chimere/views.py
index 02f79fe..ab07a07 100644
--- a/chimere/views.py
+++ b/chimere/views.py
@@ -641,23 +641,28 @@ def getDetail(request, area_name, key, popup=False):
response_dct['popup'] = popup
response_dct['category'] = None
+ marker_cats = list(marker.categories.all())
+
if request.method == 'GET':
if 'simple' in request.GET and request.GET['simple']:
response_dct['simple'] = True
if 'categories' in request.GET and request.GET['categories']:
- response_dct['categories'] = []
+ response_dct['extra_categories'] = []
for cat_id in request.GET['categories'].split('-'):
try:
category = models.SubCategory.objects.get(
available=True, pk=int(cat_id))
+ if category not in marker_cats:
+ continue
if not response_dct['category']:
response_dct['category'] = category
- response_dct['categories'].append(category)
+ else:
+ response_dct['extra_categories'].append(category)
except (models.SubCategory.DoesNotExists, ValueError):
pass
- if len(response_dct['categories']):
+ if response_dct['category']:
response_dct['color'] = \
- response_dct['categories'][0].category.color
+ response_dct['category'].category.color
response_dct['share_networks'], net_dct = \
getShareNetwork(request, response_dct['area_name'], marker, geo_type)