X-Git-Url: https://git-public.kairo.at/?p=lantea.git;a=blobdiff_plain;f=js%2Fui.js;h=bc3303d8474674363375f89e8f02060c1c823a0e;hp=7ed15e286fe8cabe54dd1c92cbb46a1a1cb78e5c;hb=b5e49b956629a45c3af14a87790060cbf18a718a;hpb=3d99a6fd7f01119be461690e77a4cf10fd4122ba diff --git a/js/ui.js b/js/ui.js index 7ed15e2..bc3303d 100644 --- a/js/ui.js +++ b/js/ui.js @@ -47,7 +47,7 @@ window.onload = function() { if (gWaitCounter <= 0) gWaitCounter = 0; else - document.getElementById("debug").textContent = "Loading failed (waiting for init)."; + console.log("Loading failed (waiting for init)."); gMapPrefsLoaded = true; resizeAndDraw(); @@ -66,24 +66,33 @@ window.onresize = function() { function initDB() { // Open DB. - var request = window.indexedDB.open("MainDB", 1); + var request = window.indexedDB.open("MainDB", 2); request.onerror = function(event) { // Errors can be handled here. Error codes explain in: // https://developer.mozilla.org/en/IndexedDB/IDBDatabaseException#Constants - //document.getElementById("debug").textContent = - // "error opening mainDB: " + event.target.errorCode; + if (gDebug) + console.log("error opening mainDB: " + event.target.errorCode); }; request.onsuccess = function(event) { - //document.getElementById("debug").textContent = "mainDB opened."; mainDB = request.result; }; request.onupgradeneeded = function(event) { mainDB = request.result; - //document.getElementById("debug").textContent = "mainDB upgraded."; - // Create a "prefs" objectStore. - var prefsStore = mainDB.createObjectStore("prefs"); - // Create a "track" objectStore. - var trackStore = mainDB.createObjectStore("track", {autoIncrement: true}); + var ver = mainDB.version || 0; // version is empty string for a new DB + if (gDebug) + console.log("mainDB has version " + ver + ", upgrade needed."); + if (!mainDB.objectStoreNames.contains("prefs")) { + // Create a "prefs" objectStore. + var prefsStore = mainDB.createObjectStore("prefs"); + } + if (!mainDB.objectStoreNames.contains("track")) { + // Create a "track" objectStore. + var trackStore = mainDB.createObjectStore("track", {autoIncrement: true}); + } + if (!mainDB.objectStoreNames.contains("tilecache")) { + // Create a "tilecache" objectStore. + var tilecacheStore = mainDB.createObjectStore("tilecache"); + } mainDB.onversionchange = function(event) { mainDB.close(); mainDB = undefined;