Files
AI-on-the-edge-device/sd-card/html/prevalue_set.html
CaCO3 7b2a80a13d Enhance pages (#2075)
* enhance pages

* .

* .

* .

* .

* .

* .

---------

Co-authored-by: CaCO3 <caco@ruinelli.ch>
2023-02-25 14:20:55 +01:00

202 lines
4.8 KiB
HTML

<!DOCTYPE html>
<html>
<head>
<link rel="icon" href="favicon.ico?v=$COMMIT_HASH" type="image/x-icon">
<title>Set PreValue</title>
<meta charset="utf-8">
<style>
h1 {font-size: 2em;}
h2 {font-size: 1.5em;}
h3 {font-size: 1.2em;}
p {font-size: 1em;}
div {
width: 200px;
padding: 10px 5px;
display: inline-block;
border: 1px solid #ccc;
font-size: 16px;
max-height: 35px;
}
input[type=number] {
width: 125px;
padding: 10px 5px;
display: inline-block;
border: 1px solid #ccc;
font-size: 16px;
}
.button {
padding: 10px 20px;
width: 211px;
font-size: 16px;
}
</style>
</head>
<body style="font-family: arial; padding: 0px 10px;">
<h3>Set the previous value for consistency check and substitution for NaN</h3>
<class id="Numbers_text" style="font-size: 120%; color:black;"><b>Choose Number: </b>
<select id="Numbers_value1" onchange="numberChanged()">
</select>
</class>
<table style="width:100%">
<tr>
<td>
<h3>Current "Previous Value":</h3>
</td>
<td>
<div id="prevalue"></div>
</td>
</tr>
<tr>
<td>
<h3>New "Previous Value":<br>(Format = 123.456)</h3><p>&nbsp;</p>
</td>
<td>
<input type="number" id="myInput" name="myInput"
pattern="[0-9]+([\.,][0-9]+)?" step="0.001"
title="This should be a number with up to 4 decimal places.">
<button class="button" type="button" onclick="setprevalue()">Set Previous Value</button>
<p>(The current "Raw Value" got entered as the suggested new "Previous Value")</p>
</td>
</tr>
<tr>
<td>
<h3>Result:</h3>
</td>
<td>
<div id="result" readonly></div>
</td>
</tr>
</table>
</body></html>
<link href="firework.css?v=$COMMIT_HASH" rel="stylesheet">
<script type="text/javascript" src="jquery-3.6.0.min.js?v=$COMMIT_HASH"></script>
<script type="text/javascript" src="firework.js?v=$COMMIT_HASH"></script>
<script type="text/javascript" src="common.js?v=$COMMIT_HASH"></script>
<script type="text/javascript" src="readconfigcommon.js?v=$COMMIT_HASH"></script>
<script type="text/javascript" src="readconfigparam.js?v=$COMMIT_HASH"></script>
<script type="text/javascript">
var domainname = getDomainname();
var NUMBERS;
function setprevalue() {
var inputVal = document.getElementById("myInput").value;
var sel = document.getElementById("Numbers_value1");
var _number = sel.options[sel.selectedIndex].text;
inputVal = inputVal.replace(",", ".");
var xhttp = new XMLHttpRequest();
try {
url = domainname + "/setPreValue?value=" + inputVal + "&numbers=" + _number;
xhttp.open("GET", url, false);
xhttp.send();
response = xhttp.responseText;
document.getElementById("result").innerHTML=response;
}
catch (error)
{
firework.launch('Failed to get data from device!', 'danger', 30000);
}
}
function loadPrevalue(_domainname) {
// Get current Pre Value
var sel = document.getElementById("Numbers_value1");
var _number = sel.options[sel.selectedIndex].text;
var xhttp = new XMLHttpRequest();
try {
url = _domainname + '/setPreValue?numbers=' + _number;
xhttp.open("GET", url, false);
xhttp.send();
response = xhttp.responseText;
document.getElementById("prevalue").innerHTML=response;
}
catch (error)
{
firework.launch('Failed to get data from device!', 'danger', 30000);
}
// Get current RAW Value
var sel = document.getElementById("Numbers_value1");
var _number = sel.options[sel.selectedIndex].text;
var xhttp = new XMLHttpRequest();
try {
url = _domainname + '/value?all=true&type=raw';
xhttp.open("GET", url, false);
xhttp.send();
response = xhttp.responseText;
lines = response.split(/\r?\n/);
lines.forEach(function(line) {
arr = line.split("\t");
if (_number == arr[0]) {
document.getElementById("myInput").value=arr[1];
return;
}
});
}
catch (error)
{
firework.launch('Failed to get data from device!', 'danger', 30000);
}
}
function numberChanged(){
loadPrevalue(domainname);
}
function UpdateNUMBERS(_sel){
zw = getNUMBERInfo();
index = 0;
var _index = document.getElementById("Numbers_value1");
while (_index.length){
_index.remove(0);
}
for (var i = 0; i < zw.length; ++i){
var option = document.createElement("option");
option.text = zw[i]["name"];
option.value = i;
_index.add(option);
if (typeof _sel !== 'undefined') {
if (zw[i]["name"] == _sel)
index = i
}
}
_index.selectedIndex = index;
loadPrevalue(domainname);
}
function init(){
domainname = getDomainname();
loadConfig(domainname);
ParseConfig();
UpdateNUMBERS();
loadPrevalue(domainname);
}
init();
</script>