From fa90339feaa29046f276ddb9fe7a8fd715964156 Mon Sep 17 00:00:00 2001 From: Kai Lauterbach Date: Wed, 3 May 2023 14:16:00 +0200 Subject: [PATCH] Fixed light power button optical handling. --- firmware/data/index_template_bottom.html | 9 +- firmware/html/index_template_bottom.html | 459 ++++++++++++----------- 2 files changed, 235 insertions(+), 233 deletions(-) diff --git a/firmware/data/index_template_bottom.html b/firmware/data/index_template_bottom.html index db94a65..baeab8c 100644 --- a/firmware/data/index_template_bottom.html +++ b/firmware/data/index_template_bottom.html @@ -38,8 +38,7 @@ amain.classList.remove("pure-button-primary"); acfg.classList.remove("pure-button-primary"); atde.classList.add("pure-button-primary"); }); - - - diff --git a/firmware/html/index_template_bottom.html b/firmware/html/index_template_bottom.html index 376ef2f..8fb77bc 100644 --- a/firmware/html/index_template_bottom.html +++ b/firmware/html/index_template_bottom.html @@ -1,251 +1,252 @@ - - - - + // Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off + var links = document.querySelectorAll('[id^="on"][id$="_off"]'); + // Füge einen Klick-Listener zu jedem Link hinzu + links.forEach(function(link) { + link.addEventListener('click', function(event) { + // Verhindere, dass der Link die Seite neu lädt + event.preventDefault(); + // Extrahiere die Zahl aus der ID des Links + var id = this.id.replace('on', '').replace('_off', ''); + // Erstelle eine neue Anfrage an die entsprechende URL + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=false&transition=' + document.getElementById('transition').value, true); + // Sende die Anfrage im Hintergrund + xhr.send(); + updateLightState(); + this.classList.add('pure-button-primary'); + document.getElementById('on'+id+'_on').classList.remove('pure-button-primary'); + }); + }); + // Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off + var links = document.querySelectorAll('[id^="on"][id$="_on"]'); + // Füge einen Klick-Listener zu jedem Link hinzu + links.forEach(function(link) { + link.addEventListener('click', function(event) { + // Verhindere, dass der Link die Seite neu lädt + event.preventDefault(); + // Extrahiere die Zahl aus der ID des Links + var id = this.id.replace('on', '').replace('_on', ''); + // Erstelle eine neue Anfrage an die entsprechende URL + var xhr = new XMLHttpRequest(); + xhr.open('GET', 'http://{{IP_ADDRESS}}/?on' + id + '=true&transition=' + document.getElementById('transition').value, true); + // Sende die Anfrage im Hintergrund + xhr.send(); + updateLightState(); + this.classList.remove('pure-button-primary'); + document.getElementById('on'+id+'_off').classList.remove('pure-button-primary'); + }); + }); +