diff --git a/invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html b/invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html index 39c22e258..24723c088 100644 --- a/invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html +++ b/invenio_app_rdm/records_ui/templates/semantic-ui/invenio_app_rdm/records/detail.html @@ -287,6 +287,7 @@
{%- if permissions.can_read_files -%} + {%- block record_files_readable -%} {# record has files AND user can see files #} {%- set files = files | order_entries | selectattr("status", "==", "completed") | list %} {%- if files|length > 0 -%} @@ -297,6 +298,7 @@

{{ _('Files') }}

{%- endif -%} {{ file_list_box(files, record_ui["id"], is_preview, include_deleted, record, permissions) }} {% endif %} + {%- endblock record_files_readable -%} {% else %} {# record has files BUT user does not have permission to see files #}

class="trigger" aria-label="{{ _('File preview') }}" > - {{ file.key }} + {{ human_readable_file_name }}

@@ -82,7 +87,8 @@

download_endpoint='invenio_app_rdm_records.record_file_download', preview_endpoint='invenio_app_rdm_records.record_file_preview', is_media=false, - permissions=None + permissions=None, + display_name=None ) %} @@ -108,6 +114,11 @@

{% for file in files %} {% if not file.access.hidden %} {%- set is_remote_file = file.transfer.type == transfer_types.REMOTE %} + {%- if display_name %} + {%- set human_readable_file_name = display_name(file) or file.key %} + {%- else %} + {%- set human_readable_file_name = file.key %} + {%- endif %} {% if is_preview %} {%- set file_url_download = url_for(download_endpoint, pid_value=pid, filename=file.key, download=1, preview=1) %} {%- set file_url_preview = url_for(preview_endpoint, pid_value=pid, filename=file.key, preview=1, include_deleted=include_deleted_value) %} @@ -120,7 +131,7 @@

{%- if not is_remote_file %} {{ file.checksum or _("Checksum not yet calculated.") }} @@ -151,7 +162,7 @@

{%- endmacro %} -{% macro file_list_box(files, pid, is_preview, include_deleted, record, permissions) %} +{% macro file_list_box(files, pid, is_preview, include_deleted, record, permissions, display_name=None) %} {%- set binary_sizes = not config.APP_RDM_DISPLAY_DECIMAL_FILE_SIZES %}

@@ -174,13 +185,13 @@

{{ record.ui.access_status.title_l10n }}

{% endif %}
- {{ file_list(files, pid, is_preview, include_deleted, record=record,download_endpoint="invenio_app_rdm_records.record_file_download", permissions=permissions) }} + {{ file_list(files, pid, is_preview, include_deleted, record=record,download_endpoint="invenio_app_rdm_records.record_file_download", permissions=permissions, display_name=display_name) }}
{%- endmacro %} -{% macro media_file_list_box(files, pid, is_preview, include_deleted, record, permissions) %} +{% macro media_file_list_box(files, pid, is_preview, include_deleted, record, permissions, display_name=None) %} {%- set binary_sizes = not config.APP_RDM_DISPLAY_DECIMAL_FILE_SIZES %}

@@ -204,7 +215,7 @@

{{ record.ui.access_status.title_l10n }}

{% endif %}
- {{ file_list(files, pid, is_preview, include_deleted, record=record, with_preview=false, download_endpoint="invenio_app_rdm_records.record_media_file_download", is_media=true, permissions=permissions) }} + {{ file_list(files, pid, is_preview, include_deleted, record=record, with_preview=false, download_endpoint="invenio_app_rdm_records.record_media_file_download", is_media=true, permissions=permissions, display_name=display_name) }}