ajout js pour mettre à jour les togglers de listes de connexions
This commit is contained in:
parent
e3d17db6e5
commit
c3b0a31bfe
@ -16,7 +16,7 @@ function ListeSalles() {
|
|||||||
$liste = "<div id=\"liste_salles\">\n";
|
$liste = "<div id=\"liste_salles\">\n";
|
||||||
foreach ($salles as $sal) {
|
foreach ($salles as $sal) {
|
||||||
if (!in_array($sal, $salles_invisibles)) {
|
if (!in_array($sal, $salles_invisibles)) {
|
||||||
$liste = $liste."<a href=\"#$sal\" id=\"h-$sal\" class=\"lien_salle\">$sal</a> <span id=\"hj-$sal\" class=\"jours\"> </span>";
|
$liste = $liste."<a href=\"#$sal\" id=\"h-$sal\" class=\"lien_salle\">$sal</a> <span id=\"hj-$sal\" class=\"jours\"> </span>\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
$liste = $liste;
|
$liste = $liste;
|
||||||
@ -42,34 +42,64 @@ function InfoWinlog() {
|
|||||||
<link rel="stylesheet" media="screen" type="text/css" title="default" href="default.css">
|
<link rel="stylesheet" media="screen" type="text/css" title="default" href="default.css">
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<?php
|
||||||
<?php
|
// Si le compte est autorisé à voir les salles, on affiche le div
|
||||||
// Si le compte est autorisé à voir les salles, on affiche le div
|
if (in_array($username, $autorises)) {
|
||||||
if (in_array($username, $autorises)) {
|
// header
|
||||||
// header
|
$liste_salles = ListeSalles();
|
||||||
$liste_salles = ListeSalles();
|
$infobulle = InfoWinlog();
|
||||||
$infobulle = InfoWinlog();
|
echo("<div id=\"menu_salles\">\n");
|
||||||
echo('<div id="menu_salles">');
|
echo("<p title=\"$infobulle\"><b>Connexions Windows en cours par salle</b></p>\n");
|
||||||
echo("<p title=\"$infobulle\"><b>Connexions Windows en cours par salle</b></p>");
|
echo($liste_salles);
|
||||||
echo($liste_salles);
|
echo("<br/><a href=\"recup_salles.php\" class=\"right\"><i>rechargement</i></a>\n</div>\n");
|
||||||
echo("<br/><a href=\"recup_salles.php\" class=\"right\"><i>rechargement</i></a>\n</div>\n");
|
echo('</div>'."\n");
|
||||||
echo('</div>'."\n");
|
// salles et connexions
|
||||||
// salles et connexions
|
echo('<div id="loaddiv">'."\n");
|
||||||
echo('<div id="loaddiv">'."\n");
|
include('reload_salles.php');
|
||||||
include('reload_salles.php');
|
echo('</div>');
|
||||||
echo('</div>');
|
// footer
|
||||||
// footer
|
$texte = '<br/><br/><a href="recup_salles.php"><i>rechargement des comptes, machines et salles</i></a>';
|
||||||
$texte = '<br/><br/><a href="recup_salles.php"><i>rechargement des comptes, machines et salles</i></a>';
|
}
|
||||||
}
|
else
|
||||||
else
|
{
|
||||||
{
|
// sinon on affiche un message
|
||||||
// sinon on affiche un message
|
$texte = "Vous n'avez pas l'autorisation d'afficher cette page";
|
||||||
$texte = "Vous n'avez pas l'autorisation d'afficher cette page";
|
}
|
||||||
}
|
echo($texte);
|
||||||
echo($texte);
|
?>
|
||||||
?>
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
|
// fonction de permutation enroulé/déroulé de la liste de connexions d'une salle
|
||||||
|
var toggle = function(el, enrouleurs) {
|
||||||
|
var listeId = (el.id).replace('b-', 'c-');
|
||||||
|
var liste = document.getElementById(listeId);
|
||||||
|
if (enrouleurs[el.id]) {
|
||||||
|
liste.className = "enroule";
|
||||||
|
el.innerHTML = "[+] ";
|
||||||
|
enrouleurs[el.id] = false;
|
||||||
|
} else {
|
||||||
|
liste.className = "deroule";
|
||||||
|
el.innerHTML = "[-] ";
|
||||||
|
enrouleurs[el.id] = true;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
// fonction de mise à jour des bouton enrouleurs/dérouleurs
|
||||||
|
var enroule = function(enrouleurs) {
|
||||||
|
for (var e in enrouleurs) {
|
||||||
|
var el = document.getElementById(e);
|
||||||
|
var listeId = (el.id).replace('b-', 'c-');
|
||||||
|
var liste = document.getElementById(listeId);
|
||||||
|
if (enrouleurs[e]) {
|
||||||
|
liste.className = "deroule";
|
||||||
|
el.innerHTML = "[-] ";
|
||||||
|
} else {
|
||||||
|
liste.className = "enroule";
|
||||||
|
el.innerHTML = "[+] ";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
// fonction d'affichage d'erreur dans la console
|
// fonction d'affichage d'erreur dans la console
|
||||||
var erreurXHR = function(url) {
|
var erreurXHR = function(url) {
|
||||||
console.log("erreur chargement" + url + " : " + xhr.statusText);
|
console.log("erreur chargement" + url + " : " + xhr.statusText);
|
||||||
@ -144,7 +174,7 @@ function InfoWinlog() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// emission requête XHR et récupération du résultat dans div
|
// emission requête XHR et récupération du résultat dans div
|
||||||
var reload = function(url, div) {
|
var reload = function(url, div, enrouleurs) {
|
||||||
var xhr = new XMLHttpRequest();
|
var xhr = new XMLHttpRequest();
|
||||||
xhr.open("GET", url);
|
xhr.open("GET", url);
|
||||||
xhr.onload = function(e) {
|
xhr.onload = function(e) {
|
||||||
@ -152,6 +182,7 @@ function InfoWinlog() {
|
|||||||
if (xhr.status === 200) {
|
if (xhr.status === 200) {
|
||||||
div.innerHTML = xhr.responseText;
|
div.innerHTML = xhr.responseText;
|
||||||
flash();
|
flash();
|
||||||
|
enroule(enrouleurs);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
erreurXHR(url);
|
erreurXHR(url);
|
||||||
@ -170,11 +201,22 @@ function InfoWinlog() {
|
|||||||
var init = function() {
|
var init = function() {
|
||||||
var div = document.getElementById('loaddiv');
|
var div = document.getElementById('loaddiv');
|
||||||
if (div) {
|
if (div) {
|
||||||
window.setInterval(function() {
|
|
||||||
reload(url, div);
|
|
||||||
}, <?php echo($delayMs); ?>);
|
|
||||||
reload(url, div);
|
|
||||||
jourListeSalle(div);
|
jourListeSalle(div);
|
||||||
|
var enrouleurs = {}; // tableau associatif des enrouleurs pour garder l'état de chaque liste sur reload
|
||||||
|
var elems = document.getElementsByClassName("toggler");
|
||||||
|
// initialisation des enrouleurs (true = déroulé, par défaut)
|
||||||
|
for (var i = 0; i < elems.length; i++) {
|
||||||
|
enrouleurs[elems[i].id] = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
div.addEventListener("click", function(e) { toggle(e.target, enrouleurs); }, false);
|
||||||
|
|
||||||
|
window.setInterval(function() {
|
||||||
|
reload(url, div, enrouleurs);
|
||||||
|
}, <?php echo($delayMs); ?>);
|
||||||
|
reload(url, div, enrouleurs);
|
||||||
|
enroule(enrouleurs);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
window.onload = init;
|
window.onload = init;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user