Fix: Backup-Export schwer auffindbar
Der Backup-Export/Import (Phase 7) war bislang nur ueber den zweiten Tab
im "KI-Ausflugsziele importieren"-Fenster erreichbar - der Toolbar-Button
nannte an keiner Stelle "Export" oder "Backup", weshalb die Funktion
praktisch nicht auffindbar war.
Neuer eigener Toolbar-Button "Daten sichern/wiederherstellen" oeffnet
das bestehende Import-Fenster jetzt direkt auf dem Backup-Tab
(openImport('backup')). Der bisherige Button bleibt fuer den
KI-JSON-Import zustaendig (openImport('ai')), keine Funktionsaenderung
an der eigentlichen Export-/Import-Logik.
This commit is contained in:
@@ -60,6 +60,9 @@
|
|||||||
<button id="open-import-btn" type="button" class="btn btn--secondary">
|
<button id="open-import-btn" type="button" class="btn btn--secondary">
|
||||||
📥 KI-Ausflugsziele importieren
|
📥 KI-Ausflugsziele importieren
|
||||||
</button>
|
</button>
|
||||||
|
<button id="open-backup-btn" type="button" class="btn btn--secondary">
|
||||||
|
💾 Daten sichern/wiederherstellen
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p id="map-picking-hint" class="map-picking-hint" hidden>
|
<p id="map-picking-hint" class="map-picking-hint" hidden>
|
||||||
|
|||||||
+11
-1
@@ -150,7 +150,16 @@
|
|||||||
if (!button) return;
|
if (!button) return;
|
||||||
|
|
||||||
button.addEventListener('click', () => {
|
button.addEventListener('click', () => {
|
||||||
EventMap.ui.openImport();
|
EventMap.ui.openImport('ai');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function setupBackupButton() {
|
||||||
|
const button = document.getElementById('open-backup-btn');
|
||||||
|
if (!button) return;
|
||||||
|
|
||||||
|
button.addEventListener('click', () => {
|
||||||
|
EventMap.ui.openImport('backup');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -170,6 +179,7 @@
|
|||||||
setupAddPlaceButton();
|
setupAddPlaceButton();
|
||||||
setupPromptGeneratorButton();
|
setupPromptGeneratorButton();
|
||||||
setupImportButton();
|
setupImportButton();
|
||||||
|
setupBackupButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
setupStatusClose();
|
setupStatusClose();
|
||||||
|
|||||||
+13
-4
@@ -520,22 +520,31 @@
|
|||||||
refs.backupParseError.hidden = true;
|
refs.backupParseError.hidden = true;
|
||||||
refs.backupPreview.hidden = true;
|
refs.backupPreview.hidden = true;
|
||||||
refs.backupStatus.textContent = '';
|
refs.backupStatus.textContent = '';
|
||||||
|
|
||||||
setActiveTab('ai');
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Öffnet das Import-/Backup-Fenster, immer im zurückgesetzten Zustand auf dem KI-Import-Tab. */
|
/**
|
||||||
function openImport() {
|
* Öffnet das Import-/Backup-Fenster im zurückgesetzten Zustand.
|
||||||
|
* @param {'ai'|'backup'} [initialTab] Welcher Tab beim Öffnen aktiv sein
|
||||||
|
* soll - 'backup' für den direkten Einstieg über den Sichern/
|
||||||
|
* Wiederherstellen-Toolbar-Button (Export war sonst innerhalb des
|
||||||
|
* KI-Import-Fensters schwer auffindbar).
|
||||||
|
*/
|
||||||
|
function openImport(initialTab = 'ai') {
|
||||||
if (!container || !refs) {
|
if (!container || !refs) {
|
||||||
console.error('EventMap: Import-Fenster wurde noch nicht initialisiert (initImport()).');
|
console.error('EventMap: Import-Fenster wurde noch nicht initialisiert (initImport()).');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
resetModalState();
|
resetModalState();
|
||||||
|
setActiveTab(initialTab === 'backup' ? 'backup' : 'ai');
|
||||||
container.hidden = false;
|
container.hidden = false;
|
||||||
document.body.classList.add('import-modal-open');
|
document.body.classList.add('import-modal-open');
|
||||||
|
if (initialTab === 'backup') {
|
||||||
|
refs.backupTextarea.focus();
|
||||||
|
} else {
|
||||||
refs.aiTextarea.focus();
|
refs.aiTextarea.focus();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function closeImport() {
|
function closeImport() {
|
||||||
if (!container || container.hidden) return;
|
if (!container || container.hidden) return;
|
||||||
|
|||||||
Reference in New Issue
Block a user