Merge claude/1

This commit is contained in:
librelad 2026-05-26 23:58:52 +01:00
commit 7f29d33c45
2 changed files with 12 additions and 12 deletions

View File

@ -154,20 +154,17 @@
<section class="backup-tabpanel" id="backup-panel-migrate">
<div class="backup-card backup-migrate-card">
<div class="backup-card-header">
<h2>Restore an app from another LibrePortal</h2>
<span class="backup-card-hint">
Pulls a snapshot taken on another host out of a shared backup location and
lays it down here. The destination's existing copy of the app is snapshotted
first (rollback safety), then replaced.
</span>
<h2>Cross-host migrate <span class="tooltip" title="Pulls a snapshot taken on another host out of a shared backup location and lays it down here. The destination's existing copy of the app is snapshotted first (rollback safety), then replaced." style="font-size:.75em;opacity:.7;cursor:help"></span></h2>
<span class="backup-card-hint">Restore an app from another LibrePortal</span>
</div>
<div class="backup-migrate-empty" id="backup-migrate-empty" hidden>
<p>No backups from other hosts found in any enabled location.</p>
<p class="backup-card-hint">
Either no other LibrePortal has backed up to a location this host can see,
or this is the only host using its locations. Add a shared backup location
on both hosts to enable cross-host migrate.
</p>
<div class="backup-empty-state">
No backups from other hosts visible in any enabled location.<br>
Add a <strong>shared backup location</strong> on both hosts to enable cross-host migrate.
<div style="margin-top:12px">
<button type="button" class="backup-primary-btn" data-action="go-to-locations">Open Locations</button>
</div>
</div>
</div>
<div class="backup-migrate-body" id="backup-migrate-body"></div>
</div>

View File

@ -282,6 +282,9 @@ class BackupPage {
const exportBtn = e.target.closest('[data-action="export-passwords"]');
if (exportBtn) { this.toggleExportMenu(false); this.exportRepositoryPasswords(exportBtn); return; }
const goToLocations = e.target.closest('[data-action="go-to-locations"]');
if (goToLocations) { this.switchTab('locations'); return; }
const dismissWarn = e.target.closest('[data-action="dismiss-config-warning"]');
if (dismissWarn) {
window.Dismissible?.dismiss('backup-config-warning');