summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--chimere/main/models.py8
1 files changed, 5 insertions, 3 deletions
diff --git a/chimere/main/models.py b/chimere/main/models.py
index 4647435..f633b3f 100644
--- a/chimere/main/models.py
+++ b/chimere/main/models.py
@@ -355,14 +355,16 @@ class SimpleArea:
sql_main = '''select subcat.id as id, subcat.category_id as category_id,
subcat.name as name, subcat.available as available, subcat.icon_id as icon_id,
subcat.color_theme_id as color_theme_id, subcat.order as order,
-subcat.item_type as item_type from main_subcategory subcat'''
+subcat.item_type as item_type from main_subcategory subcat
+inner join main_category cat on cat.id=subcat.category_id'''
sql = sql_main + '''
inner join main_marker mark on mark.subcategory_id=subcat.id
and ST_Contains(%s, mark.point)''' % area
if equal_status:
sql += ' and mark.status' + equal_status
if filter_available:
- sql += ' where subcat.available = TRUE'
+ sql += ' where subcat.available = TRUE and cat.available = TRUE'
+ print sql
# django > 1.1
#subcats = SubCategory.objects.raw(sql)
from django.db import connection, transaction
@@ -377,7 +379,7 @@ and (ST_Intersects(%s, rt.route) or ST_Contains(%s, rt.route))''' % (area, area)
if equal_status:
sql += ' and rt.status' + equal_status
if filter_available:
- sql += ' where subcat.available = TRUE'
+ sql += ' where subcat.available = TRUE and cat.available = TRUE'
# django > 1.1
#subcats += SubCategory.objects.raw(sql)
cursor.execute(sql, [])