Bonjour Ă tous,
Astuce 1
après la conception d’un système d’alarme sur V5, je souhaitais mettre un dashboard sur une tablette murale.
Celle-ci étant toujours connectée avec un user sans durée limitée de session, il était nécessaire de sécuriser le dashboard.
Sur IPX V5, j’ai donc créé une tempo, le dashboard sera activé pendant le décompte seulement.
Cette tempo est démarrée par la sortie d’un objet Access Control lui-même piloté via un widget clavier virtuel (voir tuto ici).
exemple avec une tempo de 3s
Tous les widgets restent pleinement fonctionnels.
Exemple avec tempo 30s
un petit widget HTML récupère l’IO output de la tempo et bascule la visibilité des widgets par leur id. (pour connaître l’id d’un widget, voir plus bas)
Exemple de code pour les widget avec id ‹ 3 › et ‹ 6 ›:
<script>
var idUnlock=66298; //id de la sortie de la tempo
var dashboardEnabled;
function g(elm){return document.getElementById(elm);}
function toggleWidgets(){ //masquage/démasquage des widget avec id=3 et 6
if (dashboardEnabled) {
g('3').style.display = "block";
g('6').style.display = "block";
} else {
g('3').style.display = "none";
g('6').style.display = "none";
}
}
window.GCE_Refresh.push(function(data) {
switch (data['_id']) {
case idUnlock: //id tempo output
dashboardEnabled=data.on;
toggleWidgets();
break;
}
});
function init() {
dashboardEnabled=false;
GCE_API.getIO(idUnlock).then((ret) => { // ask for the actual value
dashboardEnabled=ret.on;
toggleWidgets();
});
setTimeout(init,150);
</script>
Pour retrouver l’id d’un widget, faites un clic dessus avec le bouton droit de la souris puis sélectionnez l’option « inspecter ». Dans le code qui s’affiche alors, remontez progressivement en survolant le code puis sélectionnez la balise qui met en surbrillance le widget en totalité. Vous repèrerez l’élément avec la classe grid-stack-item widget. La valeur à relever est l’attribut id. (3 dans notre exemple ci-dessous)
voici la méthode en vidéo (avec le navigateur Edge):
bonne journée