Compare commits
No commits in common. "e7f0564ff0747ef0bcddca058f9eb7d4481b2f43" and "90b6b36f26ccbcdd561dba3bbf311d3a99f6b87a" have entirely different histories.
e7f0564ff0
...
90b6b36f26
10 changed files with 60 additions and 259 deletions
Binary file not shown.
Before Width: | Height: | Size: 2 MiB After Width: | Height: | Size: 2 MiB |
|
@ -190,7 +190,7 @@ break;
|
|||
}
|
||||
}
|
||||
if (lowerIndex === -1 || upperIndex === -1) {
|
||||
console.log("Warning: Current time not found in time array and not between two elements in time array. Fixing it...");
|
||||
console.log("Error: Current time not found in time array and not between two elements in time array. Fixing it...");
|
||||
lowerIndex = 0;
|
||||
upperIndex = 1;
|
||||
var tmp1 = time[0].split(':');
|
||||
|
@ -336,7 +336,6 @@ button.classList.remove("error");
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "OFF";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -377,7 +376,6 @@ button.classList.remove("error");
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "ON";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -407,11 +405,18 @@ tr.appendChild(tdHour);
|
|||
var tdMinute = createSelectCell(59, 0, 1);
|
||||
tdMinute.id = "minute" + i;
|
||||
tr.appendChild(tdMinute);
|
||||
for (var j = 1; j <=4; j++)
|
||||
{
|
||||
var tdCh = createSlider("ch" + j + "_" + i, 100, 0, 1);
|
||||
tr.appendChild(tdCh);
|
||||
}
|
||||
var tdCh1 = createSelectCell(100, 0, 1);
|
||||
tdCh1.id = "ch1_" + i;
|
||||
tr.appendChild(tdCh1);
|
||||
var tdCh2 = createSelectCell(100, 0, 1);
|
||||
tdCh2.id = "ch2_" + i;
|
||||
tr.appendChild(tdCh2);
|
||||
var tdCh3 = createSelectCell(100, 0, 1);
|
||||
tdCh3.id = "ch3_" + i;
|
||||
tr.appendChild(tdCh3);
|
||||
var tdCh4 = createSelectCell(100, 0, 1);
|
||||
tdCh4.id = "ch4_" + i;
|
||||
tr.appendChild(tdCh4);
|
||||
table.appendChild(tr);
|
||||
}
|
||||
var container = document.getElementById("table-container");
|
||||
|
@ -419,36 +424,6 @@ container.innerHTML = "";
|
|||
container.classList.add("pure-form");
|
||||
container.appendChild(table);
|
||||
}
|
||||
function createSlider(id, max, value, step) {
|
||||
var input = document.createElement("input");
|
||||
input.type = "range";
|
||||
input.min = 0;
|
||||
input.max = max;
|
||||
input.step = step;
|
||||
input.value = value;
|
||||
input.classList.add("pure-slider-range");
|
||||
if (id.startsWith("ch1_")) {
|
||||
input.style.backgroundColor = "blue";
|
||||
} else if (id.startsWith("ch2_")) {
|
||||
input.style.backgroundColor = "orange";
|
||||
} else if (id.startsWith("ch3_")) {
|
||||
input.style.backgroundColor = "green";
|
||||
} else if (id.startsWith("ch4_")) {
|
||||
input.style.backgroundColor = "red";
|
||||
}
|
||||
div = document.createElement("div");
|
||||
div.appendChild(input);
|
||||
var span = document.createElement("span");
|
||||
span.innerHTML = " " + value + " %";
|
||||
div.appendChild(span);
|
||||
input.oninput = function() {
|
||||
span.innerHTML = " " + this.value + " %";
|
||||
};
|
||||
var td = document.createElement("td");
|
||||
td.id = id;
|
||||
td.appendChild(div);
|
||||
return td;
|
||||
}
|
||||
function createSelectCell(max, value, step) {
|
||||
var select = document.createElement("select");
|
||||
for (var i = 0; i <= max; i += step) {
|
||||
|
@ -471,14 +446,10 @@ for (var i = 0; i < tcdata.length; i++) {
|
|||
var row = document.getElementById("hour" + (i+1)).parentNode;
|
||||
row.cells[0].childNodes[0].value = tcdata[i].hour;
|
||||
row.cells[1].childNodes[0].value = tcdata[i].min;
|
||||
row.cells[2].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch1 * 100 / 255));
|
||||
row.cells[2].childNodes[0].childNodes[1].innerHTML = " " + row.cells[2].childNodes[0].childNodes[0].value + " %";
|
||||
row.cells[3].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch2 * 100 / 255));
|
||||
row.cells[3].childNodes[0].childNodes[1].innerHTML = " " + row.cells[3].childNodes[0].childNodes[0].value + " %";
|
||||
row.cells[4].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch3 * 100 / 255));
|
||||
row.cells[4].childNodes[0].childNodes[1].innerHTML = " " + row.cells[4].childNodes[0].childNodes[0].value + " %";
|
||||
row.cells[5].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch4 * 100 / 255));
|
||||
row.cells[5].childNodes[0].childNodes[1].innerHTML = " " + row.cells[5].childNodes[0].childNodes[0].value + " %";
|
||||
row.cells[2].childNodes[0].value = parseInt(Math.round(tcdata[i].ch1 * 100 / 255));
|
||||
row.cells[3].childNodes[0].value = parseInt(Math.round(tcdata[i].ch2 * 100 / 255));
|
||||
row.cells[4].childNodes[0].value = parseInt(Math.round(tcdata[i].ch3 * 100 / 255));
|
||||
row.cells[5].childNodes[0].value = parseInt(Math.round(tcdata[i].ch4 * 100 / 255));
|
||||
}
|
||||
loadTCGraphData();
|
||||
});
|
||||
|
@ -486,42 +457,22 @@ loadTCGraphData();
|
|||
function createJsonFromTable() {
|
||||
var tableRows = document.querySelectorAll("table tr");
|
||||
var tcdata = [];
|
||||
var timeArr = [];
|
||||
for (var i = 1; i <= 10; i++) {
|
||||
var row = document.getElementById("hour" + i).parentNode;
|
||||
var hour = parseInt(row.cells[0].childNodes[0].value);
|
||||
var min = parseInt(row.cells[1].childNodes[0].value);
|
||||
timeArr.push(hour * 60 + min);
|
||||
var ch1 = Math.round(parseInt(row.cells[2].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch2 = Math.round(parseInt(row.cells[3].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch3 = Math.round(parseInt(row.cells[4].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch4 = Math.round(parseInt(row.cells[5].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch1 = Math.round(parseInt(row.cells[2].childNodes[0].value) * 2.55);
|
||||
var ch2 = Math.round(parseInt(row.cells[3].childNodes[0].value) * 2.55);
|
||||
var ch3 = Math.round(parseInt(row.cells[4].childNodes[0].value) * 2.55);
|
||||
var ch4 = Math.round(parseInt(row.cells[5].childNodes[0].value) * 2.55);
|
||||
tcdata.push({hour: hour, min: min, ch1: ch1, ch2: ch2, ch3: ch3, ch4: ch4});
|
||||
}
|
||||
for (var i = 0; i < timeArr.length - 1; i++) {
|
||||
if (timeArr[i] >= timeArr[i + 1]) {
|
||||
showToast('Error while verifying timing control data. The timestamps are not incrementing.', 'error');
|
||||
return null;
|
||||
}
|
||||
}
|
||||
var currentTime = {hour: new Date().getHours(), min: new Date().getMinutes()};
|
||||
var jsonData = {tcdata: tcdata, currenttime: currentTime};
|
||||
return JSON.stringify(jsonData);
|
||||
}
|
||||
function sendDataToServer() {
|
||||
var jsonData = createJsonFromTable();
|
||||
if (!jsonData) {
|
||||
button.classList.remove("pure-button-primary");
|
||||
button.classList.add("error");
|
||||
button.innerHTML = "Error!";
|
||||
setTimeout(function () {
|
||||
button.classList.remove("error");
|
||||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "save";
|
||||
}, 2000);
|
||||
console.log('Error while generating timing control data.');
|
||||
return;
|
||||
}
|
||||
var urlEncodedData = encodeURIComponent(jsonData);
|
||||
var url = 'http://{{IP_ADDRESS}}/tc_data_blocks_store?data=' + urlEncodedData;
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
@ -548,7 +499,6 @@ button.classList.remove("error");
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "save";
|
||||
}, 2000);
|
||||
showToast('Error while sending timing control data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -556,19 +506,3 @@ console.log('Error while sending data to server.');
|
|||
xhr.send();
|
||||
loadTCGraphData();
|
||||
}
|
||||
function showToast(message, type) {
|
||||
const toast = document.querySelector('.toast');
|
||||
if (toast) {
|
||||
toast.textContent = message;
|
||||
toast.classList.remove('success', 'error');
|
||||
if (type === 'success') {
|
||||
toast.classList.add('success');
|
||||
} else if (type === 'error') {
|
||||
toast.classList.add('error');
|
||||
}
|
||||
toast.style.opacity = 1;
|
||||
setTimeout(() => {
|
||||
toast.style.opacity = 0;
|
||||
}, 5000);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,7 +15,6 @@
|
|||
<body>
|
||||
<fieldset>
|
||||
<h3>{{LIGHT_NAME}}</h3>
|
||||
<div class="toast"></div>
|
||||
<div class="pure-form pure-form-aligned">
|
||||
<div class="pure-controls">
|
||||
<a href="/update" class="pure-button">update</a>
|
||||
|
@ -45,6 +44,7 @@
|
|||
<br>
|
||||
<script src="http://{{IP_ADDRESS}}/js_top">
|
||||
</script>
|
||||
<br>
|
||||
<table border=0>
|
||||
<tr>
|
||||
<td class="top-align">
|
||||
|
|
|
@ -43,24 +43,4 @@ background-color: #333;
|
|||
}
|
||||
.top-align {
|
||||
vertical-align: top;
|
||||
}
|
||||
.toast {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
color: #fff;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
opacity: 0;
|
||||
transition: opacity 0.5s ease-in-out;
|
||||
}
|
||||
.toast.success {
|
||||
background-color: #4CAF50;
|
||||
}
|
||||
.toast.error {
|
||||
background-color: #f44336;
|
||||
}
|
|
@ -26,7 +26,6 @@ button.classList.remove("error");
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "ON";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -64,7 +63,6 @@ button.classList.remove("error");
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "OFF";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -86,7 +84,6 @@ if (!response.ok) {
|
|||
throw new Error(`HTTP error! status: ${response.status}`);
|
||||
}
|
||||
}).catch(error => {
|
||||
showToast(`Error sending slider value to ${url}: ${error}`, 'error');
|
||||
console.error(`Error sending slider value to ${url}: ${error}`);
|
||||
});
|
||||
}, 500);
|
||||
|
|
|
@ -225,7 +225,7 @@ function loadTCGraphData() {
|
|||
//console.log('lowerIndex=' + lowerIndex);
|
||||
//console.log('upperIndex=' + upperIndex);
|
||||
if (lowerIndex === -1 || upperIndex === -1) {
|
||||
console.log("Warning: Current time not found in time array and not between two elements in time array. Fixing it...");
|
||||
console.log("Error: Current time not found in time array and not between two elements in time array. Fixing it...");
|
||||
lowerIndex = 0;
|
||||
upperIndex = 1;
|
||||
var tmp1 = time[0].split(':');
|
||||
|
@ -389,7 +389,6 @@ links.forEach(function(link) {
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "OFF";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -438,7 +437,6 @@ links.forEach(function(link) {
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "ON";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -483,12 +481,25 @@ function createTable() {
|
|||
tdMinute.id = "minute" + i;
|
||||
tr.appendChild(tdMinute);
|
||||
|
||||
for (var j = 1; j <=4; j++)
|
||||
{
|
||||
// chj_i
|
||||
var tdCh = createSlider("ch" + j + "_" + i, 100, 0, 1);
|
||||
tr.appendChild(tdCh);
|
||||
}
|
||||
// ch1
|
||||
var tdCh1 = createSelectCell(100, 0, 1);
|
||||
tdCh1.id = "ch1_" + i;
|
||||
tr.appendChild(tdCh1);
|
||||
|
||||
// ch2
|
||||
var tdCh2 = createSelectCell(100, 0, 1);
|
||||
tdCh2.id = "ch2_" + i;
|
||||
tr.appendChild(tdCh2);
|
||||
|
||||
// ch3
|
||||
var tdCh3 = createSelectCell(100, 0, 1);
|
||||
tdCh3.id = "ch3_" + i;
|
||||
tr.appendChild(tdCh3);
|
||||
|
||||
// ch4
|
||||
var tdCh4 = createSelectCell(100, 0, 1);
|
||||
tdCh4.id = "ch4_" + i;
|
||||
tr.appendChild(tdCh4);
|
||||
|
||||
table.appendChild(tr);
|
||||
}
|
||||
|
@ -498,49 +509,7 @@ function createTable() {
|
|||
container.classList.add("pure-form");
|
||||
container.appendChild(table);
|
||||
}
|
||||
|
||||
function createSlider(id, max, value, step) {
|
||||
// Create a new input element of type range
|
||||
var input = document.createElement("input");
|
||||
input.type = "range";
|
||||
input.min = 0;
|
||||
input.max = max;
|
||||
input.step = step;
|
||||
input.value = value;
|
||||
input.classList.add("pure-slider-range");
|
||||
// Change the color of the slider based on the id
|
||||
if (id.startsWith("ch1_")) {
|
||||
input.style.backgroundColor = "blue";
|
||||
} else if (id.startsWith("ch2_")) {
|
||||
input.style.backgroundColor = "orange";
|
||||
} else if (id.startsWith("ch3_")) {
|
||||
input.style.backgroundColor = "green";
|
||||
} else if (id.startsWith("ch4_")) {
|
||||
input.style.backgroundColor = "red";
|
||||
}
|
||||
|
||||
div = document.createElement("div");
|
||||
div.appendChild(input);
|
||||
|
||||
// Create a new span element to contain the value of the slider
|
||||
var span = document.createElement("span");
|
||||
span.innerHTML = " " + value + " %";
|
||||
div.appendChild(span);
|
||||
|
||||
// Update the span element when the value of the slider changes
|
||||
input.oninput = function() {
|
||||
span.innerHTML = " " + this.value + " %";
|
||||
};
|
||||
|
||||
// Create a new td element to contain the div element
|
||||
var td = document.createElement("td");
|
||||
td.id = id;
|
||||
td.appendChild(div);
|
||||
|
||||
// Return the td element
|
||||
return td;
|
||||
}
|
||||
|
||||
|
||||
function createSelectCell(max, value, step) {
|
||||
// Erstelle ein neues select-Element
|
||||
var select = document.createElement("select");
|
||||
|
@ -563,7 +532,7 @@ function createSelectCell(max, value, step) {
|
|||
// Gib die Zelle zurück
|
||||
return row;
|
||||
}
|
||||
|
||||
|
||||
function fillTableFromJson() {
|
||||
// Lade JSON-Daten
|
||||
fetch('http://{{IP_ADDRESS}}/tc_data_blocks_read')
|
||||
|
@ -575,18 +544,10 @@ function fillTableFromJson() {
|
|||
var row = document.getElementById("hour" + (i+1)).parentNode;
|
||||
row.cells[0].childNodes[0].value = tcdata[i].hour;
|
||||
row.cells[1].childNodes[0].value = tcdata[i].min;
|
||||
|
||||
row.cells[2].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch1 * 100 / 255));
|
||||
row.cells[2].childNodes[0].childNodes[1].innerHTML = " " + row.cells[2].childNodes[0].childNodes[0].value + " %";
|
||||
|
||||
row.cells[3].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch2 * 100 / 255));
|
||||
row.cells[3].childNodes[0].childNodes[1].innerHTML = " " + row.cells[3].childNodes[0].childNodes[0].value + " %";
|
||||
|
||||
row.cells[4].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch3 * 100 / 255));
|
||||
row.cells[4].childNodes[0].childNodes[1].innerHTML = " " + row.cells[4].childNodes[0].childNodes[0].value + " %";
|
||||
|
||||
row.cells[5].childNodes[0].childNodes[0].value = parseInt(Math.round(tcdata[i].ch4 * 100 / 255));
|
||||
row.cells[5].childNodes[0].childNodes[1].innerHTML = " " + row.cells[5].childNodes[0].childNodes[0].value + " %";
|
||||
row.cells[2].childNodes[0].value = parseInt(Math.round(tcdata[i].ch1 * 100 / 255));
|
||||
row.cells[3].childNodes[0].value = parseInt(Math.round(tcdata[i].ch2 * 100 / 255));
|
||||
row.cells[4].childNodes[0].value = parseInt(Math.round(tcdata[i].ch3 * 100 / 255));
|
||||
row.cells[5].childNodes[0].value = parseInt(Math.round(tcdata[i].ch4 * 100 / 255));
|
||||
}
|
||||
|
||||
loadTCGraphData();
|
||||
|
@ -596,51 +557,26 @@ function fillTableFromJson() {
|
|||
function createJsonFromTable() {
|
||||
var tableRows = document.querySelectorAll("table tr");
|
||||
var tcdata = [];
|
||||
|
||||
// Speichert die Zeitangaben (hour, minute) in einem Array
|
||||
var timeArr = [];
|
||||
for (var i = 1; i <= 10; i++) {
|
||||
var row = document.getElementById("hour" + i).parentNode;
|
||||
var hour = parseInt(row.cells[0].childNodes[0].value);
|
||||
var min = parseInt(row.cells[1].childNodes[0].value);
|
||||
timeArr.push(hour * 60 + min); // Speichert die Zeitangaben als Minuten seit Mitternacht
|
||||
var ch1 = Math.round(parseInt(row.cells[2].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch2 = Math.round(parseInt(row.cells[3].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch3 = Math.round(parseInt(row.cells[4].childNodes[0].childNodes[0].value) * 2.55);
|
||||
var ch4 = Math.round(parseInt(row.cells[5].childNodes[0].childNodes[0].value) * 2.55);
|
||||
tcdata.push({hour: hour, min: min, ch1: ch1, ch2: ch2, ch3: ch3, ch4: ch4});
|
||||
|
||||
var row = document.getElementById("hour" + i).parentNode;
|
||||
var hour = parseInt(row.cells[0].childNodes[0].value);
|
||||
var min = parseInt(row.cells[1].childNodes[0].value);
|
||||
var ch1 = Math.round(parseInt(row.cells[2].childNodes[0].value) * 2.55);
|
||||
var ch2 = Math.round(parseInt(row.cells[3].childNodes[0].value) * 2.55);
|
||||
var ch3 = Math.round(parseInt(row.cells[4].childNodes[0].value) * 2.55);
|
||||
var ch4 = Math.round(parseInt(row.cells[5].childNodes[0].value) * 2.55);
|
||||
|
||||
tcdata.push({hour: hour, min: min, ch1: ch1, ch2: ch2, ch3: ch3, ch4: ch4});
|
||||
}
|
||||
|
||||
// Überprüft, ob die Zeitangaben von datensatz i=0 bis i=9 aufsteigend sind
|
||||
for (var i = 0; i < timeArr.length - 1; i++) {
|
||||
if (timeArr[i] >= timeArr[i + 1]) {
|
||||
showToast('Error while verifying timing control data. The timestamps are not incrementing.', 'error');
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
var currentTime = {hour: new Date().getHours(), min: new Date().getMinutes()};
|
||||
var jsonData = {tcdata: tcdata, currenttime: currentTime};
|
||||
//console.log("jsonData = " + JSON.stringify(jsonData));
|
||||
return JSON.stringify(jsonData);
|
||||
}
|
||||
}
|
||||
|
||||
function sendDataToServer() {
|
||||
var jsonData = createJsonFromTable();
|
||||
|
||||
if (!jsonData) {
|
||||
button.classList.remove("pure-button-primary");
|
||||
button.classList.add("error");
|
||||
button.innerHTML = "Error!";
|
||||
setTimeout(function () {
|
||||
button.classList.remove("error");
|
||||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "save";
|
||||
}, 2000);
|
||||
console.log('Error while generating timing control data.');
|
||||
return;
|
||||
}
|
||||
|
||||
var urlEncodedData = encodeURIComponent(jsonData);
|
||||
var url = 'http://{{IP_ADDRESS}}/tc_data_blocks_store?data=' + urlEncodedData;
|
||||
var xhr = new XMLHttpRequest();
|
||||
|
@ -667,7 +603,6 @@ function sendDataToServer() {
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "save";
|
||||
}, 2000);
|
||||
showToast('Error while sending timing control data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -675,25 +610,3 @@ function sendDataToServer() {
|
|||
xhr.send();
|
||||
loadTCGraphData(); // update the tc data graph
|
||||
}
|
||||
|
||||
function showToast(message, type) {
|
||||
const toast = document.querySelector('.toast');
|
||||
|
||||
if (toast) {
|
||||
toast.textContent = message;
|
||||
toast.classList.remove('success', 'error');
|
||||
|
||||
if (type === 'success') {
|
||||
toast.classList.add('success');
|
||||
} else if (type === 'error') {
|
||||
toast.classList.add('error');
|
||||
}
|
||||
|
||||
toast.style.opacity = 1;
|
||||
|
||||
setTimeout(() => {
|
||||
toast.style.opacity = 0;
|
||||
}, 5000);
|
||||
}
|
||||
}
|
||||
|
|
@ -15,7 +15,6 @@
|
|||
<body>
|
||||
<fieldset>
|
||||
<h3>{{LIGHT_NAME}}</h3>
|
||||
<div class="toast"></div>
|
||||
<div class="pure-form pure-form-aligned">
|
||||
<div class="pure-controls">
|
||||
<a href="/update" class="pure-button">update</a>
|
||||
|
@ -45,6 +44,7 @@
|
|||
<br>
|
||||
<script src="http://{{IP_ADDRESS}}/js_top">
|
||||
</script>
|
||||
<br>
|
||||
<table border=0>
|
||||
<tr>
|
||||
<td class="top-align">
|
||||
|
|
|
@ -43,24 +43,4 @@ background-color: #333;
|
|||
}
|
||||
.top-align {
|
||||
vertical-align: top;
|
||||
}
|
||||
.toast {
|
||||
position: fixed;
|
||||
bottom: 10px;
|
||||
left: 50%;
|
||||
transform: translateX(-50%);
|
||||
padding: 10px;
|
||||
border-radius: 5px;
|
||||
color: #fff;
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
opacity: 0;
|
||||
transition: opacity 0.5s ease-in-out;
|
||||
}
|
||||
.toast.success {
|
||||
background-color: #4CAF50;
|
||||
}
|
||||
.toast.error {
|
||||
background-color: #f44336;
|
||||
}
|
|
@ -27,7 +27,6 @@ links.forEach(function(link) {
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "ON";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -68,7 +67,6 @@ links.forEach(function(link) {
|
|||
button.classList.add("pure-button-primary");
|
||||
button.innerHTML = "OFF";
|
||||
}, 2000);
|
||||
showToast('Error while sending data to server.', 'error');
|
||||
console.log('Error while sending data to server.');
|
||||
}
|
||||
}
|
||||
|
@ -94,7 +92,6 @@ function sendSliderValue(x) {
|
|||
}
|
||||
//console.log(`Sent slider value ${value} to ${url}`);
|
||||
}).catch(error => {
|
||||
showToast(`Error sending slider value to ${url}: ${error}`, 'error');
|
||||
console.error(`Error sending slider value to ${url}: ${error}`);
|
||||
});
|
||||
}, 500);
|
||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 439 KiB After Width: | Height: | Size: 458 KiB |
Loading…
Reference in a new issue