diff --git a/src/pobsync_backend/templates/pobsync_backend/base.html b/src/pobsync_backend/templates/pobsync_backend/base.html index 73606f4..9b08116 100644 --- a/src/pobsync_backend/templates/pobsync_backend/base.html +++ b/src/pobsync_backend/templates/pobsync_backend/base.html @@ -151,14 +151,14 @@ .host-card { border: 1px solid var(--border); border-radius: 8px; - padding: 14px; + padding: 16px; } .host-card-header { align-items: start; display: flex; gap: 12px; justify-content: space-between; - margin-bottom: 12px; + margin-bottom: 14px; } .host-card-title { display: grid; @@ -173,10 +173,21 @@ .host-card-status { flex: 0 0 auto; } - .host-card-grid { + .host-card-layout { + display: grid; + gap: 18px; + grid-template-columns: minmax(0, 1fr) minmax(240px, 320px); + } + .host-card-timeline { display: grid; gap: 12px; - grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); + grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); + } + .host-card-stats { + align-content: start; + display: grid; + gap: 10px; + grid-template-columns: repeat(2, minmax(0, 1fr)); } .host-card-item { display: grid; @@ -192,6 +203,29 @@ .host-card-item .value { overflow-wrap: anywhere; } + .host-card-stat { + background: #f8fafc; + border: 1px solid #e6edf4; + border-radius: 6px; + display: grid; + gap: 3px; + min-width: 0; + padding: 10px; + } + .host-card-stat .label { + color: var(--muted); + font-size: 11px; + font-weight: 650; + text-transform: uppercase; + } + .host-card-stat .value { + font-size: 16px; + font-weight: 650; + overflow-wrap: anywhere; + } + .host-card-stat.wide { + grid-column: 1 / -1; + } .messages { display: grid; gap: 8px; margin-bottom: 18px; } .message { background: var(--panel); @@ -236,6 +270,7 @@ main { padding: 16px; } nav { padding: 0; } .two-col { grid-template-columns: 1fr; } + .host-card-layout { grid-template-columns: 1fr; } } diff --git a/src/pobsync_backend/templates/pobsync_backend/dashboard.html b/src/pobsync_backend/templates/pobsync_backend/dashboard.html index 1a51cbd..7f0886e 100644 --- a/src/pobsync_backend/templates/pobsync_backend/dashboard.html +++ b/src/pobsync_backend/templates/pobsync_backend/dashboard.html @@ -64,55 +64,59 @@ {{ host.enabled|yesno:"enabled,disabled" }} -
-
-
Latest Snapshot
-
- {% if host.latest_snapshot %} - {{ host.latest_snapshot.dirname }} -
{{ host.latest_snapshot.kind }} {{ host.latest_snapshot.status }}
- {% else %} - none - {% endif %} +
+
+
+
Latest Snapshot
+
+ {% if host.latest_snapshot %} + {{ host.latest_snapshot.dirname }} +
{{ host.latest_snapshot.kind }} {{ host.latest_snapshot.status }}
+ {% else %} + none + {% endif %} +
+
+
+
Latest Run
+
+ {% if host.stats_summary.latest_run.id %} + Run {{ host.stats_summary.latest_run.id }} +
{{ host.stats_summary.latest_run.run_type }} {{ host.stats_summary.latest_run.duration_seconds|default:"" }}{% if host.stats_summary.latest_run.duration_seconds is not None %}s{% endif %}
+ {% else %} + none + {% endif %} +
+
+
+
Next Run
+
+ {% if host.next_run_at %} + {{ host.next_run_at|date:"Y-m-d H:i T" }} +
{{ scheduler_timezone }}
+ {% else %} + none + {% endif %} +
-
-
Latest Run
-
- {% if host.stats_summary.latest_run.id %} - Run {{ host.stats_summary.latest_run.id }} -
{{ host.stats_summary.latest_run.run_type }} {{ host.stats_summary.latest_run.duration_seconds|default:"" }}{% if host.stats_summary.latest_run.duration_seconds is not None %}s{% endif %}
- {% else %} - none - {% endif %} +
+
+
Snapshots
+
{{ host.snapshot_count }}
-
-
-
Next Run
-
- {% if host.next_run_at %} - {{ host.next_run_at|date:"Y-m-d H:i T" }} -
{{ scheduler_timezone }}
- {% else %} - none - {% endif %} +
+
Runs
+
{{ host.run_count }}
+
+
+
New Data
+
{{ host.stats_summary.latest_run.rsync.literal_data_bytes|filesizeformat }}
+
+
+
Retention
+
d{{ host.retention_daily }} w{{ host.retention_weekly }} m{{ host.retention_monthly }} y{{ host.retention_yearly }}
-
-
-
Snapshots
-
{{ host.snapshot_count }}
-
-
-
Runs
-
{{ host.run_count }}
-
-
-
New Data
-
{{ host.stats_summary.latest_run.rsync.literal_data_bytes|filesizeformat }}
-
-
-
Retention
-
d{{ host.retention_daily }} w{{ host.retention_weekly }} m{{ host.retention_monthly }} y{{ host.retention_yearly }}