diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2018-12-24 18:53:44 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2019-01-11 17:30:46 +0100 |
commit | 67ee211d9ec5eb81ea2e19b61772e396fe631820 (patch) | |
tree | d87e660e89a257cef067fa48d7cf4e28c1fe8001 /ishtar_common/views_item.py | |
parent | 57fa3f4525fb3ffaac6f061fcbc9f586a82968a6 (diff) | |
download | Ishtar-67ee211d9ec5eb81ea2e19b61772e396fe631820.tar.bz2 Ishtar-67ee211d9ec5eb81ea2e19b61772e396fe631820.zip |
Image gallery on tables first version
Diffstat (limited to 'ishtar_common/views_item.py')
-rw-r--r-- | ishtar_common/views_item.py | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index 6f4abdee9..dee4d2ffb 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -1003,6 +1003,9 @@ def get_item(model, func_name, default_name, extra_request_keys=None, if data_type == "json": EMPTY = '[]' + if data_type not in ('json', 'csv', 'json-image'): + return HttpResponse(EMPTY, content_type='text/plain') + model_to_check = model if model_for_perms: model_to_check = model_for_perms @@ -1301,13 +1304,16 @@ def get_item(model, func_name, default_name, extra_request_keys=None, if col in model.CONTEXTUAL_TABLE_COLS[contxt]: query_table_cols[idx] = \ model.CONTEXTUAL_TABLE_COLS[contxt][col] - if full == 'shortcut': + if full == 'shortcut' or data_type == 'json-image': if model.SLUG == "warehouse": query_table_cols = ['name'] table_cols = ['name'] else: query_table_cols = ['cached_label'] table_cols = ['cached_label'] + if data_type == 'json-image': + query_table_cols.append('main_image__image') + table_cols.append('main_image__image') # manage sort tables manual_sort_key = None @@ -1371,7 +1377,7 @@ def get_item(model, func_name, default_name, extra_request_keys=None, # pager management start, end = 0, None page_nb = 1 - if row_nb and data_type == "json": + if row_nb and data_type.startswith("json"): try: start = int(request_items.get('start')) page_nb = start / row_nb + 1 @@ -1478,11 +1484,12 @@ def get_item(model, func_name, default_name, extra_request_keys=None, "onclick='load_window(\"%s\")'>" \ "<i class=\"fa fa-info-circle\" aria-hidden=\"true\"></i></a>" link_ext_template = '<a href="{}" target="_blank">{}</a>' - if data_type == "json": + if data_type.startswith("json"): rows = [] for data in datas: try: - lnk = link_template % reverse('show-' + default_name, + lnk_template = link_template + lnk = lnk_template % reverse('show-' + default_name, args=[data[0], '']) except NoReverseMatch: logger.warning( |