Backup: Data-Ordner statt nur DB sichern, von Chat in Einstellungen verschoben

This commit is contained in:
Meleki committed 2026-03-01 15:41:29 +01:00
1 parent 402fbc5a40
commit 8e585443e2
5 files changed
+33 -23

No files matched your search

+12 -1
View File
@@ -164,7 +164,6 @@
<div class="header-menu-dropdown" id="chatMenuDropdown" hidden>
<button class="header-menu-item" id="systemPromptBtn">System-Prompt anzeigen</button>
<button class="header-menu-item" id="archiveBtn">Archivieren</button>
<button class="header-menu-item" id="backupDbBtn">Datenbank sichern</button>
</div>
</div>
</header>
@@ -206,6 +205,18 @@
</div>
</div>
</section>
<section class="settings-section">
<h2>Daten</h2>
<div class="setting-row">
<div class="setting-info">
<label>Backup erstellen</label>
<span class="setting-hint">Sichert den gesamten Data-Ordner (Datenbank, Agents, Memories)</span>
</div>
<div class="setting-control">
<button id="settingsBackupBtn">Jetzt sichern</button>
</div>
</div>
</section>
<section class="settings-section settings-reset">
<button id="settingsResetBtn" class="danger-btn">Alle Einstellungen zurücksetzen</button>
</section>
-16
View File
@@ -89,22 +89,6 @@ registerPage('chat', {
clearChat();
});
// Datenbank sichern
const backupDbBtn = document.getElementById('backupDbBtn');
if (backupDbBtn) backupDbBtn.addEventListener('click', async () => {
if (chatMenuDropdown) chatMenuDropdown.hidden = true;
backupDbBtn.disabled = true;
try {
await apiBackupDb();
setMetaHtml('<i class="fa fa-check-circle"></i> Backup erstellt und heruntergeladen');
} catch (e) {
console.error('Backup fehlgeschlagen:', e);
setMetaHtml('<i class="fa fa-times-circle"></i> Backup fehlgeschlagen');
} finally {
backupDbBtn.disabled = false;
}
});
// Custom Command Buttons ins Header-Menü einfügen
if (chatMenuDropdown) {
// "System"-Label ganz oben einfügen
+14
View File
@@ -51,6 +51,20 @@ registerPage('settings', {
applySettings();
});
const backupBtn = document.getElementById('settingsBackupBtn');
if (backupBtn) backupBtn.addEventListener('click', async () => {
backupBtn.disabled = true;
backupBtn.textContent = 'Wird erstellt...';
try {
await apiBackupDb();
} catch (e) {
console.error('Backup fehlgeschlagen:', e);
} finally {
backupBtn.textContent = 'Jetzt sichern';
backupBtn.disabled = false;
}
});
resetBtn.addEventListener('click', () => {
if (!confirm('Alle Einstellungen auf Standard zurücksetzen?')) return;
resetSettings();