From e42edddd33382855202ff2f17e6b77d65f6ad152 Mon Sep 17 00:00:00 2001 From: "Matthias P. Braendli" Date: Fri, 20 Sep 2024 11:23:53 +0200 Subject: Show RC params in dashboard --- static/settings.js | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 static/settings.js (limited to 'static/settings.js') diff --git a/static/settings.js b/static/settings.js new file mode 100644 index 0000000..287f6f6 --- /dev/null +++ b/static/settings.js @@ -0,0 +1,41 @@ +async function btn_settings_add_service() { + const template = document.getElementById('service_template'); + + let clon = template.content.cloneNode(true); + document.getElementById('services').appendChild(clon); +} + +async function btn_settings_remove_service(element_clicked) { + element_clicked.parentElement.remove() +} + +async function btn_settings_send() { + let data = { + 'instance_name': document.getElementById('instance_name').value, + 'tist': document.getElementById('tist').checked, + 'tist_offset': parseInt(document.getElementById('tist_offset').value, 10), + 'ensemble_id': parseInt(document.getElementById('ensemble_id').value, 16), + 'ensemble_ecc': parseInt(document.getElementById('ensemble_ecc').value, 16), + 'ensemble_label': document.getElementById('ensemble_label').value, + 'ensemble_shortlabel': document.getElementById('ensemble_shortlabel').value, + 'output_edi_port': parseInt(document.getElementById('output_edi_port').value, 10), + 'services': [], + }; + + const services = document.getElementById('services'); + const destList = services.querySelectorAll("p.service"); + for (let i = 0; i < destList.length; i++) { + data.services.push({ + 'sid': parseInt(destList[i].querySelector("input.srv_sid").value, 16), + 'ecc': parseInt(destList[i].querySelector("input.srv_ecc").value, 16), + 'label': destList[i].querySelector("input.srv_label").value, + 'shortlabel': destList[i].querySelector("input.srv_shortlabel").value, + 'input_port': parseInt(destList[i].querySelector("input.srv_input_port").value, 10), + 'bitrate': parseInt(destList[i].querySelector("input.srv_bitrate").value, 10), + 'protection': parseInt(destList[i].querySelector("input.srv_protection").value, 10), + }); + } + + await post('/api/settings', data); +} + -- cgit v1.2.3