Daybook: a self-hosted, multi-user Django + DRF app where agents, scripts, or people publish artifacts and each logged-in user browses their own time-ordered, label-filterable feed. This squashes prior local development history (kept privately on a separate branch) into a single clean starting point for the public repository. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
39 lines
1.7 KiB
HTML
39 lines
1.7 KiB
HTML
{% extends "artifacts/settings_base.html" %}
|
|
|
|
{% block settings_content %}
|
|
<h2>Storage</h2>
|
|
|
|
<div class="usage-bar" aria-label="Storage used">
|
|
<div class="usage-bar-fill {% if percent_used >= 90 %}usage-bar-fill--full{% elif percent_used >= 75 %}usage-bar-fill--warn{% endif %}" style="width: {{ percent_used }}%"></div>
|
|
</div>
|
|
<p class="usage-summary">
|
|
<strong>{{ used_bytes|filesizeformat }}</strong> of {{ quota_bytes|filesizeformat }} used ({{ percent_used }}%)
|
|
</p>
|
|
|
|
<ul class="storage-facts">
|
|
<li>{{ artifact_count }} artifact{{ artifact_count|pluralize }} total</li>
|
|
<li>{{ kept_count }} kept ({{ kept_bytes|filesizeformat }}) — never auto-deleted</li>
|
|
</ul>
|
|
|
|
<p class="storage-note">
|
|
When your quota fills, the oldest <strong>unkept</strong> artifacts are deleted
|
|
automatically to make room for new ones. Click <strong>Keep</strong> on an artifact
|
|
to protect it. If the quota is full of kept artifacts, new posts are rejected until
|
|
you free space.
|
|
</p>
|
|
|
|
{% if is_superuser %}
|
|
<h3>Admin</h3>
|
|
<ul class="storage-facts">
|
|
<li>Total quota allocated across all users: <strong>{{ total_allocated|filesizeformat }}</strong></li>
|
|
<li>Free space on the artifact disk: <strong>{{ disk_free|filesizeformat }}</strong></li>
|
|
</ul>
|
|
{% if total_allocated > disk_free %}
|
|
<p class="storage-warning">
|
|
⚠ Allocated quota exceeds free disk space. Grow the volume before raising quotas,
|
|
or usage could fill the actual disk.
|
|
</p>
|
|
{% endif %}
|
|
<p class="storage-note">Per-user quotas are set in the <a href="/admin/artifacts/userprofile/">Django admin</a>.</p>
|
|
{% endif %}
|
|
{% endblock %}
|