diff options
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( | 
