diff --git a/app.js b/app.js index 4ce1aae..8e770a6 100644 --- a/app.js +++ b/app.js @@ -778,6 +778,30 @@ class TeeTracker { return; } + // Load existing data from localStorage before switching to Nextcloud + // This prevents data loss when connecting to Nextcloud for the first time + const existingTeas = localStorage.getItem(STORAGE_KEY_TEAS); + const existingEntries = localStorage.getItem(STORAGE_KEY_ENTRIES); + + if (existingTeas) { + try { + this.teas = JSON.parse(existingTeas).map(tea => ({ + ...tea, + organic: tea.organic !== undefined ? tea.organic : false + })); + } catch (error) { + console.error('Error loading existing teas:', error); + } + } + + if (existingEntries) { + try { + this.entries = JSON.parse(existingEntries); + } catch (error) { + console.error('Error loading existing entries:', error); + } + } + // Save config WITHOUT password for security // Password will be requested each time or stored in sessionStorage const config = { baseUrl: url, username, path };