38 lines
No EOL
1.2 KiB
JavaScript
38 lines
No EOL
1.2 KiB
JavaScript
var links = document.querySelectorAll('[id^="tc_on"]');
|
|
links.forEach(function(link) {
|
|
link.addEventListener('click', function(event) {
|
|
event.preventDefault();
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open('GET', 'http://{{IP_ADDRESS}}/?tc=true', true);
|
|
xhr.send();
|
|
document.getElementById('tc_on').classList.add('pure-button-primary');
|
|
document.getElementById('tc_off').classList.remove('pure-button-primary');
|
|
});
|
|
});
|
|
var links = document.querySelectorAll('[id^="tc_off"]');
|
|
links.forEach(function(link) {
|
|
link.addEventListener('click', function(event) {
|
|
event.preventDefault();
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open('GET', 'http://{{IP_ADDRESS}}/?tc=false', true);
|
|
xhr.send();
|
|
document.getElementById('tc_off').classList.add('pure-button-primary');
|
|
document.getElementById('tc_on').classList.remove('pure-button-primary');
|
|
});
|
|
});
|
|
let timeoutId;
|
|
function sendSliderValue(x) {
|
|
x = x - 1;
|
|
clearTimeout(timeoutId);
|
|
timeoutId = setTimeout(() => {
|
|
var value = document.getElementById(`bri${x}`).value;
|
|
var url = `http://{{IP_ADDRESS}}/?bri${x}=${value}`;
|
|
fetch(url).then(response => {
|
|
if (!response.ok) {
|
|
throw new Error(`HTTP error! status: ${response.status}`);
|
|
}
|
|
}).catch(error => {
|
|
console.error(`Error sending slider value to ${url}: ${error}`);
|
|
});
|
|
}, 500);
|
|
} |