Refactor code for improved readability and consistency across multiple files
This commit is contained in:
262
alertes.php
262
alertes.php
@ -1,143 +1,135 @@
|
||||
<?php require('head.php');
|
||||
if(@$infos_user['droit'] > 0)
|
||||
{
|
||||
|
||||
$color = true;
|
||||
$num_page = 1; // Initialisation du numéro de la page
|
||||
$nb_per_page = 10; // Initialisation du nombre d'entréé par page
|
||||
$index = 0; // Initialisation de l'index pour la selection dans la BDD
|
||||
|
||||
// Si l'utilisateur change le nombre d'alertes par page
|
||||
if(isset($_GET['npp']) && $_GET['npp'] > 0)
|
||||
$nb_per_page = $_GET['npp']; // On modifie l'attribut
|
||||
|
||||
// Si le numéro de la page est supérieur à 0
|
||||
if(isset($_GET['page']) && $_GET['page'] > 0)
|
||||
{
|
||||
$num_page = $_GET['page']; // On modifie l'attribut
|
||||
$index = $nb_per_page * ($num_page - 1); // Ainsi que l'attribut ci
|
||||
}
|
||||
if (@$infos_user['droit'] > 0) {
|
||||
|
||||
// Sélection de l'affichage
|
||||
$getaff = "";
|
||||
if(isset($_POST['chateau']) or isset($_POST['relevage']) or isset($_POST['surpresseur']))
|
||||
{
|
||||
if(@$_POST['chateau']) $_SESSION['alerte_chateau'] = 1; else $_SESSION['alerte_chateau'] = 0;
|
||||
if(@$_POST['relevage']) $_SESSION['alerte_relevage'] = 1; else $_SESSION['alerte_relevage'] = 0;
|
||||
if(@$_POST['surpresseur']) $_SESSION['alerte_surpresseur'] = 1; else $_SESSION['alerte_surpresseur'] = 0;
|
||||
}
|
||||
if(!@$_SESSION['alerte_chateau'] && !@$_SESSION['alerte_relevage'] && !@$_SESSION['alerte_surpresseur'])
|
||||
{
|
||||
$_SESSION['alerte_chateau'] = 1;
|
||||
$_SESSION['alerte_relevage'] = 1;
|
||||
$_SESSION['alerte_surpresseur'] = 1;
|
||||
}
|
||||
|
||||
$where = "WHERE ";
|
||||
if($_SESSION['alerte_chateau'])
|
||||
{ $where .= "equipement='Chateau'"; }
|
||||
if($_SESSION['alerte_relevage'])
|
||||
{
|
||||
if($_SESSION['alerte_chateau']) $where .= " or ";
|
||||
$where .= "equipement='Station de Relevage'";
|
||||
}
|
||||
if($_SESSION['alerte_surpresseur'])
|
||||
{
|
||||
if($_SESSION['alerte_relevage'] or $_SESSION['alerte_chateau']) $where .= " or ";
|
||||
$where .= "equipement='Surpresseur'";
|
||||
}
|
||||
$color = true;
|
||||
$num_page = 1; // Initialisation du numéro de la page
|
||||
$nb_per_page = 10; // Initialisation du nombre d'entréé par page
|
||||
$index = 0; // Initialisation de l'index pour la selection dans la BDD
|
||||
|
||||
if(isset($_GET['acquitte_id']) && $_GET['acquitte_id'] >= 0)
|
||||
{
|
||||
if($connexion->query("UPDATE alertes SET acquitte='1' WHERE id_releve=".$_GET['acquitte_id']))
|
||||
header("Location:".$_SERVER['HTTP_REFERER']); // On acquitte l'alerte avec l'ID $_GET['acquitte_id'] puis on revient
|
||||
else echo 'Erreur..'; // sur la page précédente donc la page d'affichage des alertes
|
||||
}
|
||||
else
|
||||
{
|
||||
// Si l'utilisateur change le nombre d'alertes par page
|
||||
if (isset($_GET['npp']) && $_GET['npp'] > 0)
|
||||
$nb_per_page = $_GET['npp']; // On modifie l'attribut
|
||||
|
||||
// Requête qui récupère les informations de la base de données
|
||||
$result_alertes = $connexion->query("SELECT * FROM alertes ".$where." ORDER BY date DESC, heure DESC LIMIT $index, $nb_per_page");
|
||||
|
||||
echo '<h1>Gestion des alertes</h1>';
|
||||
|
||||
// Déclaration des titres du tableau
|
||||
echo '<table width="800px" border="0" cellspacing="0" cellpadding="0" align="center" style="text-align: center;">';
|
||||
echo '<tr>';
|
||||
echo '<td>Equipement</td>';
|
||||
echo '<td>Type</td>';
|
||||
echo '<td>Date / Heure</td>';
|
||||
echo '<td>Acquitte?</td>';
|
||||
echo '</tr>';
|
||||
|
||||
while($alertes = $result_alertes->fetch()) // fetch() récupère un à un les alertes
|
||||
{
|
||||
$color = !$color; // $color est un booléen, pour l'alternance de couleur
|
||||
if($color) $couleur = "#9CF"; else $couleur = "#9CC"; // 2 couleurs, pour la lisibilité du tableau
|
||||
|
||||
echo '<tr style="background-color:'.$couleur.';">'; // On défini la nouvelle ligne avec la couleur
|
||||
echo '<td class="ligne">'.$alertes['equipement'].'</td>'; // Equipement
|
||||
echo '<td class="ligne">'.utf8_encode(strtolower(str_replace('?', 'e', str_replace('_', ' ', $alertes['type'])))).'</td>';
|
||||
// Type d'alerte en minuscule avec strtolower()
|
||||
echo '<td class="ligne">'.$alertes['date'].' / '.$alertes['heure'].'</td>'; // Date et Heure
|
||||
echo '<td class="ligne">';
|
||||
// Si "acquitte" est a 1 on affiche "Oui" sinon on afficher un lien pour l'acquitter "Non-> Acquitter"
|
||||
if($alertes['acquitte']) echo 'Oui';
|
||||
else echo '<span id="acqu'.$alertes['id_releve'].'">Non → <a href="?acquitte_id='.$alertes['id_releve'].'" onClick="acqu'.$alertes['id_releve'].'.innerHTML=\'→ Oui\'">Acquitter</a>';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
echo '</table>'; // Fermeture du tableau
|
||||
|
||||
// Nb pages
|
||||
$nb_alertes = $connexion->query("SELECT count(*) FROM alertes ".$where."")->fetchColumn();
|
||||
if($nb_alertes == 0) echo '<h1>Aucunes alertes</h1>';
|
||||
else
|
||||
{
|
||||
if(isset($_GET['page']))
|
||||
$pageActuelle = $_GET['page'];
|
||||
else
|
||||
$pageActuelle = '1';
|
||||
|
||||
function get_list_page($page, $nb_page, $link, $nb = 3){
|
||||
$list_page = array();
|
||||
for ($i=1; $i <= $nb_page; $i++)
|
||||
{
|
||||
if (($i < $nb) OR ($i > $nb_page - $nb) OR (($i < $page + $nb) AND ($i > $page -$nb)))
|
||||
$list_page[] = ($i==$page)?'<a class="pagenumeroactuel">[ '.$i.' ]</a>':'<a class="pagenumero" href="'.$link.'page='.$i.'">'.$i.'</a>';
|
||||
else
|
||||
{
|
||||
if ($i >= $nb AND $i <= $page - $nb)
|
||||
$i = $page - $nb;
|
||||
elseif ($i >= $page + $nb AND $i <= $nb_page - $nb)
|
||||
$i = $nb_page - $nb;
|
||||
$list_page[] = '...';
|
||||
}
|
||||
// Si le numéro de la page est supérieur à 0
|
||||
if (isset($_GET['page']) && $_GET['page'] > 0) {
|
||||
$num_page = $_GET['page']; // On modifie l'attribut
|
||||
$index = $nb_per_page * ($num_page - 1); // Ainsi que l'attribut ci
|
||||
}
|
||||
$print= implode(' ', $list_page);
|
||||
return $print;
|
||||
}
|
||||
echo '<br>Pages: ';
|
||||
echo get_list_page($pageActuelle, (($nb_alertes -1 ) / $nb_per_page)+1, '?');
|
||||
echo '<form method="GET"><input type="text" name="page" value="'.$pageActuelle.'" style="width:30px;"><input type="submit" value="Rechercher"></form>';
|
||||
echo '<br>';
|
||||
}
|
||||
|
||||
// Sélection de l'affichage
|
||||
$getaff = "";
|
||||
if (isset($_POST['chateau']) or isset($_POST['relevage']) or isset($_POST['surpresseur'])) {
|
||||
if (@$_POST['chateau']) $_SESSION['alerte_chateau'] = 1;
|
||||
else $_SESSION['alerte_chateau'] = 0;
|
||||
if (@$_POST['relevage']) $_SESSION['alerte_relevage'] = 1;
|
||||
else $_SESSION['alerte_relevage'] = 0;
|
||||
if (@$_POST['surpresseur']) $_SESSION['alerte_surpresseur'] = 1;
|
||||
else $_SESSION['alerte_surpresseur'] = 0;
|
||||
}
|
||||
if (!@$_SESSION['alerte_chateau'] && !@$_SESSION['alerte_relevage'] && !@$_SESSION['alerte_surpresseur']) {
|
||||
$_SESSION['alerte_chateau'] = 1;
|
||||
$_SESSION['alerte_relevage'] = 1;
|
||||
$_SESSION['alerte_surpresseur'] = 1;
|
||||
}
|
||||
|
||||
$where = "WHERE ";
|
||||
if ($_SESSION['alerte_chateau']) {
|
||||
$where .= "equipement='Chateau'";
|
||||
}
|
||||
if ($_SESSION['alerte_relevage']) {
|
||||
if ($_SESSION['alerte_chateau']) $where .= " or ";
|
||||
$where .= "equipement='Station de Relevage'";
|
||||
}
|
||||
if ($_SESSION['alerte_surpresseur']) {
|
||||
if ($_SESSION['alerte_relevage'] or $_SESSION['alerte_chateau']) $where .= " or ";
|
||||
$where .= "equipement='Surpresseur'";
|
||||
}
|
||||
|
||||
if (isset($_GET['acquitte_id']) && $_GET['acquitte_id'] >= 0) {
|
||||
if ($connexion->query("UPDATE alertes SET acquitte='1' WHERE id_releve=" . $_GET['acquitte_id']))
|
||||
header("Location:" . $_SERVER['HTTP_REFERER']); // On acquitte l'alerte avec l'ID $_GET['acquitte_id'] puis on revient
|
||||
else echo 'Erreur..'; // sur la page précédente donc la page d'affichage des alertes
|
||||
} else {
|
||||
|
||||
// Requête qui récupère les informations de la base de données
|
||||
$result_alertes = $connexion->query("SELECT * FROM alertes " . $where . " ORDER BY date DESC, heure DESC LIMIT $index, $nb_per_page");
|
||||
|
||||
echo '<h1>Gestion des alertes</h1>';
|
||||
|
||||
// Déclaration des titres du tableau
|
||||
echo '<table width="800px" border="0" cellspacing="0" cellpadding="0" align="center" style="text-align: center;">';
|
||||
echo '<tr>';
|
||||
echo '<td>Equipement</td>';
|
||||
echo '<td>Type</td>';
|
||||
echo '<td>Date / Heure</td>';
|
||||
echo '<td>Acquitte?</td>';
|
||||
echo '</tr>';
|
||||
|
||||
while ($alertes = $result_alertes->fetch()) // fetch() récupère un à un les alertes
|
||||
{
|
||||
$color = !$color; // $color est un booléen, pour l'alternance de couleur
|
||||
if ($color) $couleur = "#9CF";
|
||||
else $couleur = "#9CC"; // 2 couleurs, pour la lisibilité du tableau
|
||||
|
||||
echo '<tr style="background-color:' . $couleur . ';">'; // On défini la nouvelle ligne avec la couleur
|
||||
echo '<td class="ligne">' . $alertes['equipement'] . '</td>'; // Equipement
|
||||
echo '<td class="ligne">' . utf8_encode(strtolower(str_replace('?', 'e', str_replace('_', ' ', $alertes['type'])))) . '</td>';
|
||||
// Type d'alerte en minuscule avec strtolower()
|
||||
echo '<td class="ligne">' . $alertes['date'] . ' / ' . $alertes['heure'] . '</td>'; // Date et Heure
|
||||
echo '<td class="ligne">';
|
||||
// Si "acquitte" est a 1 on affiche "Oui" sinon on afficher un lien pour l'acquitter "Non-> Acquitter"
|
||||
if ($alertes['acquitte']) echo 'Oui';
|
||||
else echo '<span id="acqu' . $alertes['id_releve'] . '">Non → <a href="?acquitte_id=' . $alertes['id_releve'] . '" onClick="acqu' . $alertes['id_releve'] . '.innerHTML=\'→ Oui\'">Acquitter</a>';
|
||||
echo '</td>';
|
||||
echo '</tr>';
|
||||
}
|
||||
|
||||
echo '</table>'; // Fermeture du tableau
|
||||
|
||||
// Nb pages
|
||||
$nb_alertes = $connexion->query("SELECT count(*) FROM alertes " . $where . "")->fetchColumn();
|
||||
if ($nb_alertes == 0) echo '<h1>Aucunes alertes</h1>';
|
||||
else {
|
||||
if (isset($_GET['page']))
|
||||
$pageActuelle = $_GET['page'];
|
||||
else
|
||||
$pageActuelle = '1';
|
||||
|
||||
function get_list_page($page, $nb_page, $link, $nb = 3)
|
||||
{
|
||||
$list_page = array();
|
||||
for ($i = 1; $i <= $nb_page; $i++) {
|
||||
if (($i < $nb) or ($i > $nb_page - $nb) or (($i < $page + $nb) and ($i > $page - $nb)))
|
||||
$list_page[] = ($i == $page) ? '<a class="pagenumeroactuel">[ ' . $i . ' ]</a>' : '<a class="pagenumero" href="' . $link . 'page=' . $i . '">' . $i . '</a>';
|
||||
else {
|
||||
if ($i >= $nb and $i <= $page - $nb)
|
||||
$i = $page - $nb;
|
||||
elseif ($i >= $page + $nb and $i <= $nb_page - $nb)
|
||||
$i = $nb_page - $nb;
|
||||
$list_page[] = '...';
|
||||
}
|
||||
}
|
||||
$print = implode(' ', $list_page);
|
||||
return $print;
|
||||
}
|
||||
echo '<br>Pages: ';
|
||||
echo get_list_page($pageActuelle, (($nb_alertes - 1) / $nb_per_page) + 1, '?');
|
||||
echo '<form method="GET"><input type="text" name="page" value="' . $pageActuelle . '" style="width:30px;"><input type="submit" value="Rechercher"></form>';
|
||||
echo '<br>';
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
// Options d'affichage
|
||||
echo '</br><div style class="options"><form method="post" action="alertes.php?npp='.$nb_per_page.'"><label><input type="checkbox" name="chateau" value="1" ';
|
||||
if($_SESSION['alerte_chateau']) echo 'checked';
|
||||
echo '>Château</label> <label><input type="checkbox" name="relevage" value="1" ';
|
||||
if($_SESSION['alerte_relevage']) echo 'checked';
|
||||
echo '>Station de Relevage</label> <label><input type="checkbox" name="surpresseur" value="1" ';
|
||||
if($_SESSION['alerte_surpresseur']) echo 'checked';
|
||||
echo '>Surpresseur</label><br/><input type="submit" value="Flitrer les résultats"></form></div>';
|
||||
}
|
||||
|
||||
}
|
||||
else echo 'Vous n\'êtes pas autorisé/connecté!';
|
||||
include('foot.php'); ?>
|
||||
|
||||
|
||||
// Options d'affichage
|
||||
echo '</br><div style class="options"><form method="post" action="alertes.php?npp=' . $nb_per_page . '"><label><input type="checkbox" name="chateau" value="1" ';
|
||||
if ($_SESSION['alerte_chateau']) echo 'checked';
|
||||
echo '>Château</label> <label><input type="checkbox" name="relevage" value="1" ';
|
||||
if ($_SESSION['alerte_relevage']) echo 'checked';
|
||||
echo '>Station de Relevage</label> <label><input type="checkbox" name="surpresseur" value="1" ';
|
||||
if ($_SESSION['alerte_surpresseur']) echo 'checked';
|
||||
echo '>Surpresseur</label><br/><input type="submit" value="Flitrer les résultats"></form></div>';
|
||||
}
|
||||
} else echo 'Vous n\'êtes pas autorisé/connecté!';
|
||||
include('foot.php');
|
||||
|
Reference in New Issue
Block a user