pour aller plus loin, si je reprends le code de @Teebex (que je ne peux pas tester n’ayant pas d’IPX)
on peut ajouter des petits cadenas qui changent de couleur quand on les clique, au dessus de chaque volet.
Rouge les commandes ne fonctionnent pas,
Vert pour déverrouiller les commandes.
Les commandes sont initialement verrouilées.
Ainsi, en début de script :
Var s='<span id="sec1" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicons-lock</span>' +
<span id="sec2" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicon-lock</span>' +
<span id="sec3" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);">glyphicon-lock</span>' +
<span id="sec4" class="glyphicons glyphicons-lock" style="width:25%;margin-left:40px;font-size:20px;color:red" onClick="(function(elmt){elmt.style.color = (elmt.style.color == 'red') ? 'green' : 'red'; return false;})(this);"">glyphicon-lock</span>'
puis on conditionne les actions des boutons sur la couleur du cadenas correspondant au volet :
exemple avec le bouton up
s = s + '<div style="height:40px;"></div>' +
'<span class="police-arrow-up" style="width:25%;margin-left:20px;font-size:20px" onclick="(function(){if (sec1.style.color=="green"){newAJAXCommand(' + "'io.cgi?rly=0'" + ');})();"></span>' +
'<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec2.style.color=="green"){newAJAXCommand(' + "'io.cgi?rly=2'" + ');})();"></span>' +
'<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec3.style.color=="green"){newAJAXCommand(' + "'io.cgi?vout=4'" + ');})();"></span>' +
'<span class="police-arrow-up" style="width:25%;margin-left:40px;font-size:20px" onclick="(function(){if (sec4.style.color=="green"){newAJAXCommand(' + "'io.cgi?vout=54'" + ');})();"></span>';
Puis conditionner les autres éléments du widget.
j’espère ne pas avoir fait de fautes de frappes, ne pouvant pas tester ce script.