From: Michael Prager Date: Thu, 12 May 2011 15:14:51 +0000 (+0200) Subject: added NaN validation check for settings with numbers X-Git-Url: https://code.delx.au/comingnext/commitdiff_plain/fe4098ea7937d3b3348fe4d0c5d3cb8186b40781 added NaN validation check for settings with numbers --- diff --git a/comingNext/index.html b/comingNext/index.html index c085646..7c97d58 100644 --- a/comingNext/index.html +++ b/comingNext/index.html @@ -962,13 +962,16 @@ function showSettings() config[key].Value = document.forms[0].elements["settings." + key].value; else if (config[key].Type == 'Int') { config[key].Value = parseInt(document.forms[0].elements["settings." + key].value); - if (config[key].Value < 0) + if (config[key].Value < 0 || isNaN(config[key].Value)) config[key].Value = config[key].Default; } else if (config[key].Type == 'Bool') config[key].Value = document.forms[0].elements["settings." + key].checked; - else if (config[key].Type == 'UID') + else if (config[key].Type == 'UID') { config[key].Value = parseInt(document.forms[0].elements["settings." + key].value); + if (isNaN(config[key].Value)) + config[key].Value = config[key].Default; + } else if (config[key].Type == 'Enum') { config[key].Value = document.forms[0].elements["settings." + key].value; if (config[key].ValidValues.indexOf(config[key].Value) == -1) @@ -1136,17 +1139,23 @@ function loadSettings() var pair = stringlist[i].split('='); var key = pair[0]; var value = pair[1]; - log('stringlist: ' + key + '=\'' + value + '\''); - if (config[key].Type == 'Int') + log('stringlist: ' + key + '=\'' + value + '\''); + if (config[key].Type == 'Int') { config[key].Value = Number(value); + if (isNaN(config[key].Value)) + config[key].Value = config[key].Default; + } else if (config[key].Type == 'String') config[key].Value = value; else if (config[key].Type == 'Bool') config[key].Value = (value == 'true') else if (config[key].Type == 'Enum') config[key].Value = value; - else if (config[key].Type == 'UID') + else if (config[key].Type == 'UID') { config[key].Value = Number(value); + if (isNaN(config[key].Value)) + config[key].Value = config[key].Default; + } else if (config[key].Type == 'Array') { config[key].Value = value.split("^"); if (config[key].Value.length == 1 && config[key].Value[0] == "") {