{#- A custody plugin's Raw records (spec/plugin-pages-follow-their-role): each kind of raw record kept, its window, what becomes of it past the window, and what storage holds of it; then a raw record followed from a row's reference; then the vendor's sections. No tool of its own. `kinds` are the declaration's `meridian.RecordKind`s, `stored` the plugin's `plugin.stored`, `past` the settings as delivered (each kind's `_past_window`), and `found`, where a row's reference was followed, `plugin.find_record(key)`'s answer, with `key` the reference. -#} {% extends "meridian/base.html" %} {% import "meridian/kit.html" as kit %} {% block content %} {% block vendor_notices %}{% endblock %} {% if key is defined and key %} {% if found %}
{{ key }}: {{ {1: "archived, restorable", 2: "restored, readable for seven days", 3: "returned to the archive", 4: "deleted"}.get(found.outcome, "moved") }}.
{% else %}
{{ key }}: in storage, where the plugin put it.
{% endif %} {% endif %}

Raw records

{% set held = {} %} {% for span in stored|default([]) %}{% set _ = held.update({span.record_kind: span.record_count}) %}{% endfor %} {% if kinds|default([]) %} {% for row in [none] + kinds %} {% if row is none %} {%- else %} {%- endif %} {% block vendor_columns scoped %}{% endblock %} {% if row is none %}{% else %}{% endif %} {% endfor %}
KindWindowPast the windowIn storage
{{ row.label }}{{ row.window_days }} days{{ (past|default({})).get(row.name ~ "_past_window", "As its admin chose") if row.archivable else "Updated in place" }}{{ held.get(row.name, 0) }}
{% else %} {{ kit.empty("No raw records kept", "This plugin declares no kind of raw record.") }} {% endif %}
{% block vendor_sections %}{% endblock %} {% endblock %}