summaryrefslogtreecommitdiff
path: root/ishtar_common/views_item.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2019-02-04 16:20:47 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2019-04-24 19:38:56 +0200
commit8c41c66665fe34195cd3329aebfaaa20de0e1ab5 (patch)
tree0d5fd1b1e9fccbf3b58e23c108bffd834997f849 /ishtar_common/views_item.py
parentdf8ac2b90a6e819e9199b168213c250e437eded9 (diff)
downloadIshtar-8c41c66665fe34195cd3329aebfaaa20de0e1ab5.tar.bz2
Ishtar-8c41c66665fe34195cd3329aebfaaa20de0e1ab5.zip
Map JS: display clusters
Diffstat (limited to 'ishtar_common/views_item.py')
-rw-r--r--ishtar_common/views_item.py21
1 files changed, 14 insertions, 7 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py
index f019fbcb3..72381ed8b 100644
--- a/ishtar_common/views_item.py
+++ b/ishtar_common/views_item.py
@@ -1006,16 +1006,20 @@ def _format_geojson(rows):
if not rows:
return data
geo_attr, name_attr = None, None
- for attr in rows[0]:
- if attr.endswith('point_2d'):
- geo_attr = attr
- if attr in ['name', 'cached_label']:
- name_attr = attr
+ full, idx = len(rows), 0
+ while not geo_attr and idx < full:
+ row = rows[idx]
+ for attr in row:
+ if attr.endswith('point_2d'):
+ geo_attr = attr
+ if attr in ['name', 'cached_label']:
+ name_attr = attr
+ idx += 1
if not geo_attr or not name_attr:
return data
for row in rows:
feat = {'name': row[name_attr], 'id': row['id']}
- if not row[geo_attr]:
+ if not row.get(geo_attr, None):
data['no-geo'].append(feat)
continue
feature = {'type': 'Feature'}
@@ -1206,6 +1210,9 @@ def get_item(model, func_name, default_name, extra_request_keys=None,
except (ValueError, TypeError):
row_nb = DEFAULT_ROW_NUMBER
+ if data_type == 'jso # no limit for mapn-map': # no limit for map
+ row_nb = None
+
dct_request_items = {}
# filter requested fields
@@ -1610,7 +1617,7 @@ def get_item(model, func_name, default_name, extra_request_keys=None,
try:
lnk_template = link_template
lnk = lnk_template % reverse('show-' + default_name,
- args=[data[0], ''])
+ args=[data[0], ''])
except NoReverseMatch:
logger.warning(
'**WARN "show-' + default_name + '" args ('