migrate all settings
authorLaurent Mazet <mazet@softndesign.org>
Mon, 14 Sep 2020 05:54:40 +0000 (07:54 +0200)
committerLaurent Mazet <mazet@softndesign.org>
Mon, 14 Sep 2020 05:54:40 +0000 (07:54 +0200)
public/trivabble.js

index ce3fbfccc91c954c6ef7f0e1d6fcefac5e2edb8b..3d6414ec93bc8799b86b39a6b39f2badd7765890 100644 (file)
         }
     }
 
+    function migrateSetting(key, type) {
+        if (Object.prototype.hasOwnProperty.call(localStorage, key)) {
+            localStorage.setItem(key + "_type", type);
+        }
+    }
+    migrateSetting("doubleTapDuration", "number");
+    migrateSetting("flashLightDuration", "number");
+    migrateSetting("spellCheckerEnabled", "boolean");
+    migrateSetting("trivabbleGameNumber", "number");
+    migrateSetting("trivabbleBoardLang", "string");
+    migrateSetting("trivabbleGameNumber", "number");
+    migrateSetting("trivabbleLang", "string");
+    migrateSetting("trivabblePlayerName", "string");
+
     const _ = (window.libD && libD.l10n) ? libD.l10n() : function (s) {
         return s;
     };
 
         const flashLightColor = document.getElementById("flash-light-color");
         if (flashLightColor) {
+
+            /* migration of old settings for flash light color */
+            const oldSetting = getSetting("flashLightColor");
+            if (oldSetting) {
+                setSetting("FLASH_LIGHT_COLOR", oldSetting);
+                delete localStorage.flashLightColor;
+            }
+
             flashLightColor.value = getSetting("FLASH_LIGHT_COLOR");
             flashLightColor.onchange = function () {
                 setSetting("FLASH_LIGHT_COLOR", document.getElementById("flash-light-color").value);