{% extends "admin/base_site.html" %}{% load i18n %}{% comment %} Per-object audit timeline: every recorded change to one object, newest first, each rendered as a field-level diff. Extends the active admin's base template, so it inherits whichever theme is in play (plain Django admin or django-unfold) instead of pinning either one's markup. Everything it adds lives in the `content` block; only the diff tables carry inline styling (see snapadmin/audit_diff.html). Context is built by SnapadminAuditLogAdmin.timeline_view(). {% endcomment %} {% block content %}
← {% translate "Back to the audit log" %}
{% comment %} Deliberately not a {% blocktranslate %}…{% plural %} pair: the shipped catalogs carry no Plural-Forms header, so introducing the project's first plural entry here would mean reworking all ten of them for one line. {% endcomment %}{% blocktranslate trimmed with target=target %}Audit entries for {{ target }}{% endblocktranslate %}: {{ total }}{% if target_repr %} — {{ target_repr }}{% endif %}
{% if truncated %}
{% blocktranslate trimmed with limit=limit %}
Showing the {{ limit }} most recent entries. Use
manage.py snapadmin_audit_export for the full history.
{% endblocktranslate %}
{% blocktranslate trimmed with actor=item.entry.actor_repr|default:_("anonymous") %} by {{ actor }} {% endblocktranslate %} {% if item.entry.ip_address %} · {{ item.entry.ip_address }}{% endif %}
{% include "snapadmin/audit_diff.html" with rows=item.rows %}{% translate "No audit entries have been recorded for this object." %}
{% endfor %}