|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- let rangeValues = {};
- let xhrUpd = new XMLHttpRequest();
-
- xhrUpd.onreadystatechange = function () {
- if (xhrUpd.readyState == 4) {
- if (xhrUpd.status == 200) {
- console.log("xhrUpd: ", xhrUpd.responseText);
- }
- else {
- console.log("xhrUpd: status=", xhrUpd.status);
- }
- }
- }
-
- function reloadRangeValues() {
- let url = "/update";
- // if there are scheduled updates, send them
- if (Object.keys(rangeValues).length > 0) {
- let params = [];
- for (let p in rangeValues)
- params.push(encodeURIComponent(p) + "=" + encodeURIComponent(rangeValues[p]));
- params = params.join("&");
-
- xhrUpd.open("POST", url, true);
- xhrUpd.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
- xhrUpd.send(params);
-
- rangeValues = {};
- }
-
- };
-
- function reloadTerminal() {
- const terminal = document.querySelector("#term");
- const autoscroll = document.querySelector("#scroll");
-
- fetch(`/terminal`, {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/x-www-form-urlencoded',
- },
- body: ''
- })
- .then(response => response.text())
- .then(data => {
- if(data.length > 0) {
- terminal.innerHTML += data;
- if (autoscroll.checked)
- terminal.scrollTop = terminal.scrollHeight;
- }
- })
- .catch(error => console.log('Error:', error));
- };
-
- document.addEventListener('DOMContentLoaded', () => {
- setInterval(reloadTerminal, 1000);
- setInterval(reloadRangeValues, 1000);
-
-
- // use data- attributes for action
- document.querySelectorAll('.control').forEach((button) => {
- button.onclick = () => {
- fetch(`/action`, {
- method: 'POST',
- headers: {
- 'Content-Type': 'application/x-www-form-urlencoded',
- },
- body: `control=${button.dataset.action}`
- })
- .then(response => console.log(response))
- .catch(error => console.log('Error:', error));
- }
- });
-
- document.querySelectorAll('.regler').forEach((regler) => {
- regler.oninput = () => {
- document.querySelector(`#${regler.dataset.output}`).innerHTML = regler.value;
- rangeValues[regler.id] = regler.value;
- }
- });
-
- document.querySelector('#clear_term').onclick = () => {
- document.querySelector("#term").innerHTML = '';
- };
-
- });
-
-
|