fixed config file reading

This commit is contained in:
DJ2LS 2023-02-12 15:59:46 +01:00
parent 6683d0a1a7
commit 951dce8adf

View file

@ -552,13 +552,13 @@ window.addEventListener("DOMContentLoaded", () => {
fs.writeFileSync(configPath, JSON.stringify(config, null, 2)); fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
}); });
// hamlib event listener for saving settings // hamlib bulk event listener for saving settings
hamlib_elements.forEach(function (elem) { hamlib_elements.forEach(function (elem) {
try { try {
document.getElementById(elem).addEventListener("change", function () { document.getElementById(elem).addEventListener("change", function () {
config.elem = document.getElementById(elem).value; config[elem] = document.getElementById(elem).value;
fs.writeFileSync(configPath, JSON.stringify(config, null, 2)); fs.writeFileSync(configPath, JSON.stringify(config, null, 2));
console.log(config.elem); console.log(config);
}); });
} catch (e) { } catch (e) {
console.log(e); console.log(e);
@ -566,6 +566,7 @@ window.addEventListener("DOMContentLoaded", () => {
} }
}); });
document document
.getElementById("hamlib_rigctld_start") .getElementById("hamlib_rigctld_start")
.addEventListener("click", () => { .addEventListener("click", () => {
@ -3067,25 +3068,29 @@ function loadSettings(elements) {
let element = document.getElementById(id); let element = document.getElementById(id);
if (element.tagName === "SELECT") { if (element.tagName === "SELECT") {
element.value = config.elem; element.value = config[id];
// add selected value // add selected value
for (var i = 0, j = element.options.length; i < j; ++i) { for (var i = 0, j = element.options.length; i < j; ++i) {
if (element.options[i].innerHTML === config.elem) { if (element.options[i].innerHTML === config[id]) {
element.selectedIndex = i; element.selectedIndex = i;
break; break;
} }
} }
} else if (element.tagName === "INPUT" && element.type === "text") {
element.value = config.elem;
} else if (element.tagName === "INPUT" && element.type === "radio") {
element.value = config.elem;
if (config.elem === "True") {
} else if (element.tagName === "INPUT" && element.type === "text") {
element.value = config[id];
} else if (element.tagName === "INPUT" && element.type === "radio") {
element.value = config[id];
if (config[id] === "True") {
element.checked = true; element.checked = true;
} else { } else {
element.checked = false; element.checked = false;
} }
} else {
console.log("nothing matched....")
} }
}); });
} }