From fc66b376cb3a2c73843cc882d500cfd743c0790e Mon Sep 17 00:00:00 2001 From: sijanec Date: Sun, 17 May 2020 00:13:40 +0200 Subject: dist should work, TODO: minify and bundle --- assets/js/settings.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 assets/js/settings.js (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js new file mode 100644 index 0000000..fda9ea5 --- /dev/null +++ b/assets/js/settings.js @@ -0,0 +1,19 @@ +// settings.js -- TODO + +async function setLanguage(langCode) { + localforage.setItem("chosenLang", langCode).then((value) => { + console.log("Language set: " + value); + UIAlert(D("languageSet"), "setLanguage(): languageSet"); + }); +} + +document.addEventListener("DOMContentLoaded", async () => { + $(".settings-language-selector").click(function () { + let languageToSet = $(this).attr("data-language"); + setLanguage(languageToSet); + }); + + // Setup side menu + const menus = document.querySelectorAll(".side-menu"); + M.Sidenav.init(menus, { edge: "right", draggable: true }); +}); -- cgit v1.2.3 From 89f33d6754e6e619e81d2839d68e5b34e85fdff8 Mon Sep 17 00:00:00 2001 From: rstular Date: Sun, 17 May 2020 15:12:58 +0200 Subject: Modified language selection UI --- assets/js/settings.js | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index fda9ea5..0410aeb 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -8,12 +8,22 @@ async function setLanguage(langCode) { } document.addEventListener("DOMContentLoaded", async () => { - $(".settings-language-selector").click(function () { - let languageToSet = $(this).attr("data-language"); + + $("#select-language").on("change", () => { + let languageToSet = $(this).find(":selected").data("language"); setLanguage(languageToSet); }); + localforage.getItem("chosenLang").then((value) => { + let selectedLanguage = value ?? "sl"; + $(`#option-${selectedLanguage}`).attr("selected", true); + }).catch(() => {}); + // Setup side menu const menus = document.querySelectorAll(".side-menu"); M.Sidenav.init(menus, { edge: "right", draggable: true }); + + // Setup language select dropdown + var elems = document.querySelectorAll('select'); + M.FormSelect.init(elems, {}); }); -- cgit v1.2.3 From 831563c8ecb2854ceba73c284719b7579c0a3bbc Mon Sep 17 00:00:00 2001 From: rstular Date: Sun, 17 May 2020 16:14:07 +0200 Subject: Experimental theme support --- assets/js/settings.js | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 0410aeb..411a38e 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -7,6 +7,13 @@ async function setLanguage(langCode) { }); } +async function setTheme(targetTheme) { + localforage.setItem("targetTheme", targetTheme).then((value) => { + console.log("Theme set: " + value); + UIAlert(D("themeSet"), "setTheme(): themeSet"); + }); +} + document.addEventListener("DOMContentLoaded", async () => { $("#select-language").on("change", () => { @@ -14,11 +21,21 @@ document.addEventListener("DOMContentLoaded", async () => { setLanguage(languageToSet); }); + $("#select-theme").on("change", () => { + let themeToSet = $(this).find(":selected").data("theme"); + setTheme(themeToSet); + }); + localforage.getItem("chosenLang").then((value) => { let selectedLanguage = value ?? "sl"; $(`#option-${selectedLanguage}`).attr("selected", true); }).catch(() => {}); + localforage.getItem("theme").then((value) => { + let selectedTheme = value ?? "sl"; + $(`#option-${selectedTheme}`).attr("selected", true); + }).catch(() => {}); + // Setup side menu const menus = document.querySelectorAll(".side-menu"); M.Sidenav.init(menus, { edge: "right", draggable: true }); -- cgit v1.2.3 From b2c1b20b7c90ea481082c82ca2dba0e0e907566b Mon Sep 17 00:00:00 2001 From: sijanec Date: Sun, 17 May 2020 17:37:09 +0200 Subject: missing loginError added to l18n --- assets/js/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 411a38e..9a76ea5 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -32,7 +32,7 @@ document.addEventListener("DOMContentLoaded", async () => { }).catch(() => {}); localforage.getItem("theme").then((value) => { - let selectedTheme = value ?? "sl"; + let selectedTheme = value ?? "themeLight"; $(`#option-${selectedTheme}`).attr("selected", true); }).catch(() => {}); -- cgit v1.2.3 From de95a6b78788da7472850dad13ed9b7de9e5b9b1 Mon Sep 17 00:00:00 2001 From: rstular Date: Sun, 17 May 2020 19:21:00 +0200 Subject: Merge --- assets/js/settings.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 9a76ea5..f31bfaf 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -8,7 +8,7 @@ async function setLanguage(langCode) { } async function setTheme(targetTheme) { - localforage.setItem("targetTheme", targetTheme).then((value) => { + localforage.setItem("theme", targetTheme).then((value) => { console.log("Theme set: " + value); UIAlert(D("themeSet"), "setTheme(): themeSet"); }); @@ -40,7 +40,10 @@ document.addEventListener("DOMContentLoaded", async () => { const menus = document.querySelectorAll(".side-menu"); M.Sidenav.init(menus, { edge: "right", draggable: true }); + var elems = document.querySelectorAll(".theme-select"); + M.FormSelect.init(elems, {}); + // Setup language select dropdown - var elems = document.querySelectorAll('select'); + var elems = document.querySelectorAll(".lang-select"); M.FormSelect.init(elems, {}); }); -- cgit v1.2.3 From 61f0a67abdd293a17232bd5784b08709a3cd7856 Mon Sep 17 00:00:00 2001 From: rstular Date: Sun, 17 May 2020 19:38:43 +0200 Subject: Bug fixes (settings, gsec) --- assets/js/settings.js | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index f31bfaf..3cb4c9b 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -17,13 +17,11 @@ async function setTheme(targetTheme) { document.addEventListener("DOMContentLoaded", async () => { $("#select-language").on("change", () => { - let languageToSet = $(this).find(":selected").data("language"); - setLanguage(languageToSet); + setLanguage($(this).find(":selected").val()); }); - $("#select-theme").on("change", () => { - let themeToSet = $(this).find(":selected").data("theme"); - setTheme(themeToSet); + $("#select-theme").on("change", function() { + setTheme($(this).find(":selected").val()); }); localforage.getItem("chosenLang").then((value) => { -- cgit v1.2.3 From 9ad2f74c83d18b3b748000af4c8606ea092225d8 Mon Sep 17 00:00:00 2001 From: rstular Date: Sun, 17 May 2020 19:47:47 +0200 Subject: Language changing bug fix --- assets/js/settings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 3cb4c9b..5712039 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -16,7 +16,7 @@ async function setTheme(targetTheme) { document.addEventListener("DOMContentLoaded", async () => { - $("#select-language").on("change", () => { + $("#select-language").on("change", function() { setLanguage($(this).find(":selected").val()); }); -- cgit v1.2.3 From 3130a962bf7dba65acdd78d6ade2c88199094827 Mon Sep 17 00:00:00 2001 From: sijanec Date: Wed, 20 May 2020 17:12:13 +0200 Subject: fixed geeky operators --- assets/js/settings.js | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 5712039..b53d2ce 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -25,12 +25,18 @@ document.addEventListener("DOMContentLoaded", async () => { }); localforage.getItem("chosenLang").then((value) => { - let selectedLanguage = value ?? "sl"; + let selectedLanguage = value; + if(value == null || value.length < 1) { + selectedLanguage = "sl"; + } $(`#option-${selectedLanguage}`).attr("selected", true); }).catch(() => {}); localforage.getItem("theme").then((value) => { - let selectedTheme = value ?? "themeLight"; + let selectedTheme = value; + if(value == null || value.length < 1) { + selectedTheme = "themeLight"; + } $(`#option-${selectedTheme}`).attr("selected", true); }).catch(() => {}); -- cgit v1.2.3 From 448708182490d551721767bffc34ef35375f5082 Mon Sep 17 00:00:00 2001 From: sijanec Date: Wed, 20 May 2020 19:21:31 +0200 Subject: DO_NOT_MERGE; still testing error reporting optout --- assets/js/settings.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index b53d2ce..7ea0b47 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -14,6 +14,13 @@ async function setTheme(targetTheme) { }); } +async function setErrorReporting(targetE) { + localforage.setItem("errorReporting", targetE).then((value) => { + console.log("ErrorReporing set: " + value); + UIAlert(D("errorReportingSet"), "setErrorReporting(): errorReportingSet"); + }); +} + document.addEventListener("DOMContentLoaded", async () => { $("#select-language").on("change", function() { @@ -24,6 +31,10 @@ document.addEventListener("DOMContentLoaded", async () => { setTheme($(this).find(":selected").val()); }); + $("#select-errorreporting").on("change", function() { + setErrorReporting($(this).find(":selected").val()); + }); + localforage.getItem("chosenLang").then((value) => { let selectedLanguage = value; if(value == null || value.length < 1) { @@ -40,6 +51,14 @@ document.addEventListener("DOMContentLoaded", async () => { $(`#option-${selectedTheme}`).attr("selected", true); }).catch(() => {}); + localforage.getItem("errorReporting").then((value) => { + let selectedE = value; + if(value == null || value.length < 1) { + selectedE = "on"; + } + $(`#option-${selectedE}`).attr("selected", true); + }).catch(() => {}); + // Setup side menu const menus = document.querySelectorAll(".side-menu"); M.Sidenav.init(menus, { edge: "right", draggable: true }); -- cgit v1.2.3 From 6def94865615d5bccba3bae278ea54932643db9a Mon Sep 17 00:00:00 2001 From: sijanec Date: Wed, 20 May 2020 19:33:31 +0200 Subject: should be ok to merge --- assets/js/settings.js | 3 +++ 1 file changed, 3 insertions(+) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 7ea0b47..1dd3bfc 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -66,6 +66,9 @@ document.addEventListener("DOMContentLoaded", async () => { var elems = document.querySelectorAll(".theme-select"); M.FormSelect.init(elems, {}); + var elems = document.querySelectorAll(".errorreporting-select"); + M.FormSelect.init(elems, {}); + // Setup language select dropdown var elems = document.querySelectorAll(".lang-select"); M.FormSelect.init(elems, {}); -- cgit v1.2.3 From 8e8a1ece2e95e3817739b0ded93eac5214ba49b6 Mon Sep 17 00:00:00 2001 From: rstular Date: Wed, 20 May 2020 20:47:22 +0200 Subject: New themes --- assets/js/settings.js | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 1dd3bfc..0854042 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -21,8 +21,53 @@ async function setErrorReporting(targetE) { }); } +function shuffleArray(array) { + for (var i = array.length - 1; i > 0; i--) { + var j = Math.floor(Math.random() * (i + 1)); + var temp = array[i]; + array[i] = array[j]; + array[j] = temp; + } +} + +function setUIAdditionalOptions(state) { + var SENSITIVE_THEMES = { + "left": "Left / leva", + "right": "Right / desna" + }; + if (state === true) { + var theme_keys = Object.keys(SENSITIVE_THEMES); + shuffleArray(theme_keys); + theme_keys.forEach((item) => { + var option_element = $(``); + $("#select-theme").append(option_element); + }); + } else { + Object.keys(SENSITIVE_THEMES).forEach((item) => { + $("#option-" + item).remove(); + }); + } +} + +async function setAdditionalOptions(state) { + localforage.setItem("triggerWarningAccepted", state).then((value) => { + console.log("TriggerWarning set: " + value); + UIAlert(D("triggerWarningSet"), "setAdditionalOptions(): triggerWarningSet"); + setUIAdditionalOptions(value); + }); +} + document.addEventListener("DOMContentLoaded", async () => { + // Setup checkbox handler + $("#triggered-checkbox").change(function() { + if (this.checked) { + setAdditionalOptions(true); + } else { + setAdditionalOptions(false); + } + }); + $("#select-language").on("change", function() { setLanguage($(this).find(":selected").val()); }); -- cgit v1.2.3 From 1925324995b4c8795529f795811ef0ae0676b695 Mon Sep 17 00:00:00 2001 From: rstular Date: Wed, 20 May 2020 20:54:10 +0200 Subject: Bug fix --- assets/js/settings.js | 2 ++ 1 file changed, 2 insertions(+) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 0854042..458de31 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -47,6 +47,8 @@ function setUIAdditionalOptions(state) { $("#option-" + item).remove(); }); } + var elems = document.querySelectorAll('#select-theme'); + M.FormSelect.init(elems, {}); } async function setAdditionalOptions(state) { -- cgit v1.2.3 From e0e87794223a605040e62f4966fd1206cd6dd4e8 Mon Sep 17 00:00:00 2001 From: rstular Date: Wed, 20 May 2020 21:06:49 +0200 Subject: Persist state --- assets/js/settings.js | 161 ++++++++++++++++++++++++++------------------------ 1 file changed, 84 insertions(+), 77 deletions(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 458de31..2cc6029 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -1,67 +1,67 @@ // settings.js -- TODO async function setLanguage(langCode) { - localforage.setItem("chosenLang", langCode).then((value) => { - console.log("Language set: " + value); - UIAlert(D("languageSet"), "setLanguage(): languageSet"); - }); + localforage.setItem("chosenLang", langCode).then((value) => { + console.log("Language set: " + value); + UIAlert(D("languageSet"), "setLanguage(): languageSet"); + }); } async function setTheme(targetTheme) { - localforage.setItem("theme", targetTheme).then((value) => { - console.log("Theme set: " + value); - UIAlert(D("themeSet"), "setTheme(): themeSet"); - }); + localforage.setItem("theme", targetTheme).then((value) => { + console.log("Theme set: " + value); + UIAlert(D("themeSet"), "setTheme(): themeSet"); + }); } async function setErrorReporting(targetE) { - localforage.setItem("errorReporting", targetE).then((value) => { - console.log("ErrorReporing set: " + value); - UIAlert(D("errorReportingSet"), "setErrorReporting(): errorReportingSet"); - }); + localforage.setItem("errorReporting", targetE).then((value) => { + console.log("ErrorReporing set: " + value); + UIAlert(D("errorReportingSet"), "setErrorReporting(): errorReportingSet"); + }); } function shuffleArray(array) { - for (var i = array.length - 1; i > 0; i--) { - var j = Math.floor(Math.random() * (i + 1)); - var temp = array[i]; - array[i] = array[j]; - array[j] = temp; - } + for (var i = array.length - 1; i > 0; i--) { + var j = Math.floor(Math.random() * (i + 1)); + var temp = array[i]; + array[i] = array[j]; + array[j] = temp; + } } function setUIAdditionalOptions(state) { - var SENSITIVE_THEMES = { - "left": "Left / leva", - "right": "Right / desna" - }; - if (state === true) { - var theme_keys = Object.keys(SENSITIVE_THEMES); - shuffleArray(theme_keys); - theme_keys.forEach((item) => { - var option_element = $(``); - $("#select-theme").append(option_element); - }); - } else { - Object.keys(SENSITIVE_THEMES).forEach((item) => { - $("#option-" + item).remove(); - }); - } - var elems = document.querySelectorAll('#select-theme'); - M.FormSelect.init(elems, {}); + var SENSITIVE_THEMES = { + "left": "Left / leva", + "right": "Right / desna" + }; + if (state === true) { + var theme_keys = Object.keys(SENSITIVE_THEMES); + shuffleArray(theme_keys); + theme_keys.forEach((item) => { + var option_element = $(``); + $("#select-theme").append(option_element); + }); + } else { + Object.keys(SENSITIVE_THEMES).forEach((item) => { + $("#option-" + item).remove(); + }); + } + var elems = document.querySelectorAll('#select-theme'); + M.FormSelect.init(elems, {}); } async function setAdditionalOptions(state) { - localforage.setItem("triggerWarningAccepted", state).then((value) => { - console.log("TriggerWarning set: " + value); - UIAlert(D("triggerWarningSet"), "setAdditionalOptions(): triggerWarningSet"); - setUIAdditionalOptions(value); - }); + localforage.setItem("triggerWarningAccepted", state).then((value) => { + console.log("TriggerWarning set: " + value); + UIAlert(D("triggerWarningSet"), "setAdditionalOptions(): triggerWarningSet"); + setUIAdditionalOptions(value); + }); } document.addEventListener("DOMContentLoaded", async () => { - // Setup checkbox handler + // Setup checkbox handler $("#triggered-checkbox").change(function() { if (this.checked) { setAdditionalOptions(true); @@ -70,53 +70,60 @@ document.addEventListener("DOMContentLoaded", async () => { } }); - $("#select-language").on("change", function() { - setLanguage($(this).find(":selected").val()); - }); + $("#select-language").on("change", function() { + setLanguage($(this).find(":selected").val()); + }); - $("#select-theme").on("change", function() { - setTheme($(this).find(":selected").val()); - }); + $("#select-theme").on("change", function() { + setTheme($(this).find(":selected").val()); + }); - $("#select-errorreporting").on("change", function() { - setErrorReporting($(this).find(":selected").val()); - }); + $("#select-errorreporting").on("change", function() { + setErrorReporting($(this).find(":selected").val()); + }); - localforage.getItem("chosenLang").then((value) => { - let selectedLanguage = value; + localforage.getItem("chosenLang").then((value) => { + let selectedLanguage = value; if(value == null || value.length < 1) { selectedLanguage = "sl"; } - $(`#option-${selectedLanguage}`).attr("selected", true); - }).catch(() => {}); + $(`#option-${selectedLanguage}`).attr("selected", true); + }).catch(() => {}); - localforage.getItem("theme").then((value) => { - let selectedTheme = value; + localforage.getItem("theme").then((value) => { + let selectedTheme = value; if(value == null || value.length < 1) { selectedTheme = "themeLight"; } - $(`#option-${selectedTheme}`).attr("selected", true); - }).catch(() => {}); + $(`#option-${selectedTheme}`).attr("selected", true); + }).catch(() => {}); - localforage.getItem("errorReporting").then((value) => { - let selectedE = value; + localforage.getItem("errorReporting").then((value) => { + let selectedE = value; if(value == null || value.length < 1) { selectedE = "on"; } - $(`#option-${selectedE}`).attr("selected", true); - }).catch(() => {}); - - // Setup side menu - const menus = document.querySelectorAll(".side-menu"); - M.Sidenav.init(menus, { edge: "right", draggable: true }); - - var elems = document.querySelectorAll(".theme-select"); - M.FormSelect.init(elems, {}); - - var elems = document.querySelectorAll(".errorreporting-select"); - M.FormSelect.init(elems, {}); - - // Setup language select dropdown - var elems = document.querySelectorAll(".lang-select"); - M.FormSelect.init(elems, {}); + $(`#option-${selectedE}`).attr("selected", true); + }).catch(() => {}); + + localforage.getItem("triggerWarningAccepted").then((value) => { + if (value === true) { + $("#triggered-checkbox").attr("checked", true); + setUIAdditionalOptions(true); + } + }).catch(() => {}); + + // Setup side menu + const menus = document.querySelectorAll(".side-menu"); + M.Sidenav.init(menus, { edge: "right", draggable: true }); + + var elems = document.querySelectorAll(".theme-select"); + M.FormSelect.init(elems, {}); + + var elems = document.querySelectorAll(".errorreporting-select"); + M.FormSelect.init(elems, {}); + + // Setup language select dropdown + var elems = document.querySelectorAll(".lang-select"); + M.FormSelect.init(elems, {}); }); -- cgit v1.2.3 From d09135a10bee5368b0760feb003abc99205b1268 Mon Sep 17 00:00:00 2001 From: sijanec Date: Wed, 20 May 2020 21:37:59 +0200 Subject: added pirati tema --- assets/js/settings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'assets/js/settings.js') diff --git a/assets/js/settings.js b/assets/js/settings.js index 2cc6029..3106f14 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -33,7 +33,8 @@ function shuffleArray(array) { function setUIAdditionalOptions(state) { var SENSITIVE_THEMES = { "left": "Left / leva", - "right": "Right / desna" + "right": "Right / desna", + "piratska": "Pirate / piratska" }; if (state === true) { var theme_keys = Object.keys(SENSITIVE_THEMES); -- cgit v1.2.3