atr/templates/file-selected-path.html (70 lines of code) (raw):

{% extends "layouts/base.html" %} {% block title %} View {{ release.project.short_display_name }}/{{ release.version }}/{{ file_path }} ~ ATR {% endblock title %} {% block description %} View the content of the {{ release.project.short_display_name }} {{ release.version }} {{ file_path }} file. {% endblock description %} {% block content %} {# Generate back link based on phase_key #} {% if phase_key == "draft" %} {% set back_url = as_url(routes.draft.view, project_name=release.project.name, version_name=release.version) %} {% elif phase_key == "candidate" %} {% set back_url = as_url(routes.candidate.view, project_name=release.project.name, version_name=release.version) %} {% elif phase_key == "preview" %} {% set back_url = as_url(routes.preview.view, project_name=release.project.name, version_name=release.version) %} {% elif phase_key == "release" %} {% set back_url = as_url(routes.release.view, project_name=release.project.name, version_name=release.version) %} {% endif %} <a href="{{ back_url }}" class="atr-back-link">← Back to {{ phase_key }}</a> <div class="p-3 mb-4 bg-light border rounded"> <h2 class="mt-0">Viewing file: {{ file_path }}</h2> <p class="mb-0"> <strong>Release:</strong> {{ release.name }} </p> </div> {% if content_listing is not none %} <div class="card mb-3"> <div class="card-header"> <h5 class="mb-0">Archive contents ({{ content_listing|length }})</h5> </div> <div class="card-body p-0"> <ul class="list-group list-group-flush"> {% for item in content_listing %}<li class="list-group-item py-1 px-3 small">{{ item }}</li>{% endfor %} </ul> </div> </div> {% endif %} {% if error_message %} <div class="alert alert-danger">{{ error_message }}</div> {% elif size_limit_exceeded %} <div class="alert alert-warning">{{ content }}</div> {% elif content is not none %} {% if content_listing is not none %} <details class="mb-3"> <summary class="mb-2">View raw file content</summary> {% endif %} <div class="card mb-4"> <div class="card-header"> <h5 class="mb-0"> File content {% if not is_text %}(Hexdump){% endif %} </h5> </div> <div class="card-body p-0"> {% if is_text %} <pre class="bg-light p-4 rounded-bottom mb-0 text-break">{{ content }}</pre> {% else %} <pre class="bg-light p-4 rounded-bottom mb-0 text-break"><code>{{ content }}</code></pre> {% endif %} </div> {% if is_truncated %} <div class="card-footer text-muted small">Note: File content truncated to the first {{ max_view_size }}.</div> {% endif %} </div> {% if content_listing is not none %}</details>{% endif %} {% else %} {# Shouldn't happen #} <div class="alert alert-secondary">No content available for this file.</div> {% endif %} {% endblock content %}