{% extends "base.html" %} {% from "fragments/_chips.html" import chip, needs_review_chip %} {% block title %}Voxint — media{% endblock %} {% block cb_breadcrumb %}media /{% endblock %} {% block cb_summary %} {%- if media_summary.folder_count %}{{ media_summary.folder_count }} folder{{ "s" if media_summary.folder_count != 1 else "" }} · {% endif -%} {{ media_summary.file_count }} recording{{ "s" if media_summary.file_count != 1 else "" }} · {{ media_summary.total_hours }} {%- endblock %} {% block cb_actions %} {% set _fqs %}{% if search %}&q={{ search|urlencode }}{% endif %}{% if status %}&status={{ status }}{% endif %}{% endset %} {% if not archived and not trashed %}
{{ row.current_path or row.source_path }}
{%- endif -%}
{% endmacro %}
{# Row action verb — state-dependent to tell the operator what they will do. #}
{% macro row_action(row) %}
{%- if row.latest_run_id -%}
{%- if row.latest_run_status == "awaiting_adjudication" -%}
Review →
{%- elif row.latest_run_status == "failed" -%}
Retry →
{%- else -%}
Open →
{%- endif -%}
{%- endif -%}
{% endmacro %}
{# Card macro for a single media item in cards view. #}
{% macro media_card(row) %}
Trashed files awaiting permanent deletion. ← Back to active media
{% elif archived %}Archived runs are hidden from the active library. ← Back to active media
{% endif %} {% if notice %}{{ notice.text }}
{% endif %} {% if not archived and not trashed %} {% if submitted %}{% if submitted == "deferred" %}Queued for transcription. It will start when the worker is available. {% else %}Queued for transcription.{% endif %}
{% endif %}Registered folders share vocabulary and corrections across their files. Registering or unregistering a folder never moves any file.
{% if folder_options %}{{ opt.path }}{% if opt.project_name %} — {{ opt.project_name }}{% endif %}
No folders registered yet.
{% endif %}Showing up to the first {{ limit }} files. Register fewer or smaller folders to narrow the list.
{% endif %} {% else %} {% if trashed %}Trash is empty.
{% elif archived %}No archived runs. Archive a run from the active library to see it here.
{% elif is_filtered %}No recordings match{% if search %} "{{ search }}"{% endif %}{% if status %} with that filter{% endif %}. Clear search
{% else %}No media yet. Add a recording with the button above, or register a folder on the server.
{% endif %} {% endif %} {% if trashed and rows %} {% endif %} {% endblock %}