Merged two very similar functions into one.
This commit is contained in:
parent
df215a2c16
commit
8deac5fc15
4 changed files with 53 additions and 60 deletions
|
@ -272,15 +272,23 @@ if (document.getElementById('tab-tde').classList.contains('visible')) {
|
||||||
loadTCGraphData();
|
loadTCGraphData();
|
||||||
}
|
}
|
||||||
}, 2000);
|
}, 2000);
|
||||||
function updateLightState() {
|
function updateLightStateAndPWMValues() {
|
||||||
console.log('----> setting bri and power switch <----');
|
console.log('----> setting bri, power switch, and pwm data <----');
|
||||||
|
const promises = [];
|
||||||
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
||||||
const lightURL = `http://{{IP_ADDRESS}}/state?light=${i}`;
|
const lightURL = `http://{{IP_ADDRESS}}/state?light=${i}`;
|
||||||
fetch(lightURL).then(response => response.json()).then(data => {
|
promises.push(fetch(lightURL).then(response => response.json()));
|
||||||
|
}
|
||||||
|
Promise.all(promises)
|
||||||
|
.then(dataArray => {
|
||||||
|
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
||||||
|
const data = dataArray[i - 1];
|
||||||
const briSlider = document.getElementById(`bri${i - 1}`);
|
const briSlider = document.getElementById(`bri${i - 1}`);
|
||||||
const briSliderVal = document.getElementById(`bri${i - 1}_val`);
|
const briSliderVal = document.getElementById(`bri${i - 1}_val`);
|
||||||
const onLinkOn = document.getElementById(`on${i - 1}_on`);
|
const onLinkOn = document.getElementById(`on${i - 1}_on`);
|
||||||
const onLinkOff = document.getElementById(`on${i - 1}_off`);
|
const onLinkOff = document.getElementById(`on${i - 1}_off`);
|
||||||
|
const pwmElement = document.getElementById(`light${i - 1}_pwm`);
|
||||||
|
const pwmElementTxt = document.getElementById(`light${i - 1}_pwm_txt`);
|
||||||
briSlider.value = data.bri;
|
briSlider.value = data.bri;
|
||||||
briSliderVal.innerHTML = (Math.round((data.bri * 100.0 / 255.0) * 100) / 100).toFixed(2);
|
briSliderVal.innerHTML = (Math.round((data.bri * 100.0 / 255.0) * 100) / 100).toFixed(2);
|
||||||
if (data.on == true) {
|
if (data.on == true) {
|
||||||
|
@ -290,30 +298,18 @@ onLinkOff.classList.remove('pure-button-primary');
|
||||||
onLinkOn.classList.remove('pure-button-primary');
|
onLinkOn.classList.remove('pure-button-primary');
|
||||||
onLinkOff.classList.add('pure-button-primary');
|
onLinkOff.classList.add('pure-button-primary');
|
||||||
}
|
}
|
||||||
}).catch(error => console.error(error));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setInterval(updateLightState, 10000);
|
|
||||||
updateLightState();
|
|
||||||
function updatePWMValues() {
|
|
||||||
console.log('----> setting pwm data <----');
|
|
||||||
for (let i = 0; i < {{LIGHT_COUNT}}; i++) {
|
|
||||||
const lightID = i + 1;
|
|
||||||
const pwmElement = document.getElementById(`light${i}_pwm`);
|
|
||||||
const pwmElementTxt = document.getElementById(`light${i}_pwm_txt`);
|
|
||||||
if (pwmElement) {
|
if (pwmElement) {
|
||||||
const url = `http://{{IP_ADDRESS}}/state?light=${lightID}`;
|
|
||||||
fetch(url).then(response => response.json()).then(data => {
|
|
||||||
const pwmValue = ((Math.round((data.curpwm - ((data.curpwm >= {{PWM_MIN}}) ? {{PWM_MIN}} : 0)) / {{PWM_MAX}} * 10000) / 100).toFixed(2));
|
const pwmValue = ((Math.round((data.curpwm - ((data.curpwm >= {{PWM_MIN}}) ? {{PWM_MIN}} : 0)) / {{PWM_MAX}} * 10000) / 100).toFixed(2));
|
||||||
pwmElement.innerText = pwmValue.toString();
|
pwmElement.innerText = pwmValue.toString();
|
||||||
pwmElement.value = pwmValue;
|
pwmElement.value = pwmValue;
|
||||||
pwmElementTxt.innerText = pwmValue.toString();
|
pwmElementTxt.innerText = pwmValue.toString();
|
||||||
}).catch(error => console.error(error));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
})
|
||||||
|
.catch(error => console.error(error));
|
||||||
}
|
}
|
||||||
updatePWMValues();
|
updateLightStateAndPWMValues();
|
||||||
setInterval(updatePWMValues, 5000);
|
setInterval(updateLightStateAndPWMValues, 5000);
|
||||||
var links = document.querySelectorAll('[id^="on"][id$="_off"]');
|
var links = document.querySelectorAll('[id^="on"][id$="_off"]');
|
||||||
links.forEach(function(link) {
|
links.forEach(function(link) {
|
||||||
link.addEventListener('click', function(event) {
|
link.addEventListener('click', function(event) {
|
||||||
|
|
|
@ -18,7 +18,6 @@
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
<br>
|
|
||||||
<a href="#" id="save-button" class="pure-button pure-button-primary" onclick="sendDataToServer();">save</a>
|
<a href="#" id="save-button" class="pure-button pure-button-primary" onclick="sendDataToServer();">save</a>
|
||||||
</div>
|
</div>
|
||||||
</div> <!-- end of tab-tde -->
|
</div> <!-- end of tab-tde -->
|
||||||
|
|
|
@ -317,50 +317,49 @@ setInterval(function() {
|
||||||
}
|
}
|
||||||
}, 2000);
|
}, 2000);
|
||||||
|
|
||||||
function updateLightState() {
|
function updateLightStateAndPWMValues() {
|
||||||
console.log('----> setting bri and power switch <----');
|
console.log('----> setting bri, power switch, and pwm data <----');
|
||||||
|
const promises = [];
|
||||||
|
|
||||||
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
||||||
const lightURL = `http://{{IP_ADDRESS}}/state?light=${i}`;
|
const lightURL = `http://{{IP_ADDRESS}}/state?light=${i}`;
|
||||||
fetch(lightURL).then(response => response.json()).then(data => {
|
promises.push(fetch(lightURL).then(response => response.json()));
|
||||||
const briSlider = document.getElementById(`bri${i - 1}`);
|
|
||||||
const briSliderVal = document.getElementById(`bri${i - 1}_val`);
|
|
||||||
const onLinkOn = document.getElementById(`on${i - 1}_on`);
|
|
||||||
const onLinkOff = document.getElementById(`on${i - 1}_off`);
|
|
||||||
briSlider.value = data.bri;
|
|
||||||
briSliderVal.innerHTML = (Math.round((data.bri * 100.0 / 255.0) * 100) / 100).toFixed(2);
|
|
||||||
if (data.on == true) {
|
|
||||||
onLinkOn.classList.add('pure-button-primary');
|
|
||||||
onLinkOff.classList.remove('pure-button-primary');
|
|
||||||
} else {
|
|
||||||
onLinkOn.classList.remove('pure-button-primary');
|
|
||||||
onLinkOff.classList.add('pure-button-primary');
|
|
||||||
}
|
|
||||||
}).catch(error => console.error(error));
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
setInterval(updateLightState, 10000);
|
|
||||||
updateLightState();
|
|
||||||
|
|
||||||
function updatePWMValues() {
|
Promise.all(promises)
|
||||||
console.log('----> setting pwm data <----');
|
.then(dataArray => {
|
||||||
for (let i = 0; i < {{LIGHT_COUNT}}; i++) {
|
for (let i = 1; i <= {{LIGHT_COUNT}}; i++) {
|
||||||
const lightID = i + 1;
|
const data = dataArray[i - 1];
|
||||||
const pwmElement = document.getElementById(`light${i}_pwm`);
|
const briSlider = document.getElementById(`bri${i - 1}`);
|
||||||
const pwmElementTxt = document.getElementById(`light${i}_pwm_txt`);
|
const briSliderVal = document.getElementById(`bri${i - 1}_val`);
|
||||||
if (pwmElement) {
|
const onLinkOn = document.getElementById(`on${i - 1}_on`);
|
||||||
const url = `http://{{IP_ADDRESS}}/state?light=${lightID}`;
|
const onLinkOff = document.getElementById(`on${i - 1}_off`);
|
||||||
fetch(url).then(response => response.json()).then(data => {
|
const pwmElement = document.getElementById(`light${i - 1}_pwm`);
|
||||||
const pwmValue = ((Math.round((data.curpwm - ((data.curpwm >= {{PWM_MIN}}) ? {{PWM_MIN}} : 0)) / {{PWM_MAX}} * 10000) / 100).toFixed(2));
|
const pwmElementTxt = document.getElementById(`light${i - 1}_pwm_txt`);
|
||||||
//console.log('curpwm[' + i + '] = ' + data.curpwm + ' = ' + pwmValue);
|
|
||||||
pwmElement.innerText = pwmValue.toString();
|
briSlider.value = data.bri;
|
||||||
pwmElement.value = pwmValue;
|
briSliderVal.innerHTML = (Math.round((data.bri * 100.0 / 255.0) * 100) / 100).toFixed(2);
|
||||||
pwmElementTxt.innerText = pwmValue.toString();
|
if (data.on == true) {
|
||||||
}).catch(error => console.error(error));
|
onLinkOn.classList.add('pure-button-primary');
|
||||||
}
|
onLinkOff.classList.remove('pure-button-primary');
|
||||||
}
|
} else {
|
||||||
|
onLinkOn.classList.remove('pure-button-primary');
|
||||||
|
onLinkOff.classList.add('pure-button-primary');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pwmElement) {
|
||||||
|
const pwmValue = ((Math.round((data.curpwm - ((data.curpwm >= {{PWM_MIN}}) ? {{PWM_MIN}} : 0)) / {{PWM_MAX}} * 10000) / 100).toFixed(2));
|
||||||
|
pwmElement.innerText = pwmValue.toString();
|
||||||
|
pwmElement.value = pwmValue;
|
||||||
|
pwmElementTxt.innerText = pwmValue.toString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.catch(error => console.error(error));
|
||||||
}
|
}
|
||||||
updatePWMValues();
|
|
||||||
setInterval(updatePWMValues, 5000);
|
updateLightStateAndPWMValues();
|
||||||
|
setInterval(updateLightStateAndPWMValues, 5000);
|
||||||
|
|
||||||
// Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off
|
// Suche nach allen Links auf der Seite mit IDs von on0_off bis on3_off
|
||||||
var links = document.querySelectorAll('[id^="on"][id$="_off"]');
|
var links = document.querySelectorAll('[id^="on"][id$="_off"]');
|
||||||
|
|
|
@ -19,7 +19,6 @@
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<br>
|
|
||||||
<a href="#" id="save-button" class="pure-button pure-button-primary" onclick="sendDataToServer();">save</a>
|
<a href="#" id="save-button" class="pure-button pure-button-primary" onclick="sendDataToServer();">save</a>
|
||||||
</div>
|
</div>
|
||||||
</div> <!-- end of tab-tde -->
|
</div> <!-- end of tab-tde -->
|
||||||
|
|
Loading…
Reference in a new issue