Skip to content

Commit ca69c27

Browse files
author
Léna Voinchet
committed
Fix outdoor-indoor and nodes-servers toggles
1 parent 4c1fd30 commit ca69c27

File tree

3 files changed

+36
-22
lines changed

3 files changed

+36
-22
lines changed

index.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -669,13 +669,13 @@ <h3>Front wall scene size</h3>
669669
<div id="lidars-buttons" class="row center-x hidden">
670670
<!-- ADD BUTTON -->
671671
<div id="add-lidar-button" class="button main-button" >
672-
<p>+ New lidar</p>
672+
<p>+ New LiDAR</p>
673673
</div>
674674

675675
<!-- DELETE BUTTON -->
676676
<div id="delete-all-lidars-button" class="button default-button" >
677677
<span class="iconify secondary-icon" data-icon="fluent:delete-16-filled"></span>
678-
<p>Delete all lidars</p>
678+
<p>Delete all LiDARs</p>
679679
</div>
680680
</div>
681681
</div>

js/UI/LidarUI.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ class LidarUI{
2323
<div id="lidar-` + (lidar.id) + `-UI-header" class="row center-x-spaced center-y">
2424
<div class="row center-y">
2525
<div class="sensor-color" style="background-color: #`+ lidar.color.getHexString() + `;"></div>
26-
<p class="main-text">Lidar ` + (lidar.id + 1) + `</p>
26+
<p class="main-text">LiDAR ` + (lidar.id + 1) + `</p>
2727
</div>
2828
<div class="row center-y">
2929
<!-- <div id="lidar-` + (lidar.id) + `-solo-button"><span class="iconify" data-icon="bx:search-alt-2"></span></div> -->

js/UI/Popup.js

Lines changed: 33 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -584,30 +584,23 @@ class Popup{
584584

585585
function bindHardwareEventListeners(sensorsElements)
586586
{
587-
//New toggle indoor-outoor events
587+
// Environment and equipment toggle listening
588588
const toggleElemOutIn = document.getElementById("toggle-outdoor-indoor");
589+
const toggleElemNodSer = document.getElementById("toggle-node-server");
590+
591+
let sceneEnvironment = toggleElemOutIn.checked ? 'outdoor' : 'indoor';
592+
let nodesOrServers = toggleElemNodSer.checked ? 'nodes' : 'servers';
593+
589594
toggleElemOutIn.addEventListener('change', () => {
590-
let sceneEnvironment;
591-
if(toggleElemOutIn.checked){
592-
sceneEnvironment = 'outdoor'
593-
} else{
594-
sceneEnvironment = 'indoor'
595-
}
596-
disableSensorsConsideringEnvironment(sceneEnvironment);
595+
sceneEnvironment = toggleElemOutIn.checked ? 'outdoor' : 'indoor';
597596
sceneManager.changeEnvironment(sceneEnvironment);
597+
disableSensorsConsideringEnvironmentAndEquipment(sceneEnvironment, nodesOrServers);
598598
});
599599

600-
//New toggle node-server events
601-
// TODO
602-
const toggleElemNodSer = document.getElementById("toggle-node-server");
603600
toggleElemNodSer.addEventListener('change', () => {
604-
if(toggleElemNodSer.checked){
605-
nodesOrServers = "nodes"
606-
} else {
607-
nodesOrServers = "servers"
608-
}
609-
disableSensorsConsideringNodesAndServers(nodesOrServers)
610-
})
601+
nodesOrServers = toggleElemNodSer.checked ? 'nodes' : 'servers';
602+
disableSensorsConsideringEnvironmentAndEquipment(sceneEnvironment, nodesOrServers);
603+
});
611604

612605
// OLD Switch indoor-outdoor events
613606
// const switchElement = document.getElementById('hardware-switch-indoor-outdoor');
@@ -751,7 +744,6 @@ class Popup{
751744
//New function
752745
function disableSensorsConsideringNodesAndServers(nodesOrServers)
753746
{
754-
//TODO
755747
sensorsCompatible.forEach(s => {
756748
if(s.usedWith.includes(nodesOrServers)){
757749
document.getElementById(s.textId).classList.remove("hidden");
@@ -762,6 +754,28 @@ class Popup{
762754
});
763755
}
764756

757+
//NEW FUNCTION A CORRIGER
758+
function disableSensorsConsideringEnvironmentAndEquipment(environment, nodesOrServers)
759+
{
760+
let disabledSensorsNumber = 0;
761+
762+
sensorsCompatible.forEach(s => {
763+
if(s.canBeUsed.includes(environment) && s.usedWith.includes(nodesOrServers)) {
764+
document.getElementById(s.textId).classList.remove("hidden");
765+
} else {
766+
document.getElementById(s.textId).classList.add("hidden");
767+
disabledSensorsNumber++;
768+
}
769+
});
770+
771+
if(sensorsCompatible.length === disabledSensorsNumber){
772+
document.getElementById('hardware-warning-message').classList.remove("hidden");
773+
} else {
774+
document.getElementById('hardware-warning-message').classList.add("hidden");
775+
selectFirstSensorAvailable();
776+
}
777+
}
778+
765779
function selectFirstSensorAvailable()
766780
{
767781
const sensorsDiv = document.getElementById('multi-select-sensors');

0 commit comments

Comments
 (0)