{% extends "ui/_layout.html" %} {% block title %}Downloads - withcache{% endblock %} {% block subnav %} {% endblock %} {% block intro %}
Operator-triggered downloads run here (not in the request handler). Each job walks through queued -> running -> completed (or failed / cancelled). Cancel per row + Clear-finished on the subnav strip.
{% endblock %} {% block content %}
Downloads
{% for j in jobs %} {% endfor %} {% if not jobs %} {% endif %}
# URL Status Progress Error Action
{{ j.id }} {{ j.url }} {% if j.status == 'completed' %} completed {% elif j.status == 'failed' %} failed {% elif j.status == 'cancelled' %} cancelled {% elif j.status == 'running' %} running {% else %} {{ j.status }} {% endif %} {% if j.bytes_total and j.bytes_total > 0 %} {% set pct = (j.bytes_done * 100 / j.bytes_total) | round(1) %}
{{ pct }}% {% else %} - {% endif %}
{{ j.error or '' }} {% if j.status in ('queued', 'running') %}
{% endif %}
No download jobs. Operator triggers a fetch from the Misses tab or via the JSON API.
{% endblock %}