Ajout de la fonctionnalité de gestion des utilisateurs + déplacement du fichier Javascript gérant le filtrage des entrées dans le pied de page + correction de fautes de frappe dans les textes français + affichage de l'adresse de courriel en message de bienvenue si aucun nom complet n'existe pour l'utilisateur + déconnexion automatique d'un utilisateur désactivé par un administrateur + réorganisation visuel légère du code de certaines page + ajout du support des erreurs personnalisées lors de la déconnexion d'un utilisateur (seul une erreur générique était supporté)

This commit is contained in:
ycharbi
2023-03-11 18:37:27 +01:00
parent d3baa6166c
commit 3bd350e761
18 changed files with 569 additions and 33 deletions
@@ -63,7 +63,12 @@ function validationIdentifiants($pdo,$identifiant,$mdp) {
function initValeursSession($result) {
$_SESSION['id_utilisateur'] = $result[0]['id'];
$_SESSION['pseudo_utilisateur'] = $result[0]['utilisateur'];
$_SESSION['nom_utilisateur'] = $result[0]['nom_complet'];
if (!empty($result[0]['nom_complet'])) {
$_SESSION['nom_utilisateur'] = $result[0]['nom_complet'];
}
else {
$_SESSION['nom_utilisateur'] = $result[0]['utilisateur'];
}
$_SESSION['privilege_utilisateur'] = $result[0]['privilege'];
$_SESSION['pseudo_connexion_utilisateur'] = $result[0]['utilisateur'];
}
+19 -1
View File
@@ -4,17 +4,35 @@
* Page de fonctions permettant la vérification des permission d'un utilisateur ou d'un visiteur.
*/
// Importation des fonctions utilisateurs afin de pouvoir en lister les données plus bas (fonction listeUtilisateurBdd).
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
$infos_utilisateur = listeUtilisateurBdd($pdo,$_SESSION['id_utilisateur']);
/**
* Fonction testant le niveau de privilège d'un utilisateur authentifié ou non.
* Elle vérifie le privilège de l'utilisateur connecté et retourne la valeur adéquate.
* Si un visiteur ou un utilisateur ne remplis pas la bonne condition, il est redirigé à la page d'accueil avec un message expllicatif.
* Cette fonction devrait être appelée dans toute page de traitement.
*/
function testPrivileges(){
function testPrivileges() {
// Utilisation d'une fonction listant les données d'un utilisateur afin de savoir s'il est activé ou non. Ceci permet de déconnecter un utilisateur automatiquement à la prochaine page visité si celui-ci a été désactivé par un administrateur.
global $pdo;
$infos_utilisateur = listeUtilisateurBdd($pdo,$_SESSION['id_utilisateur']);
if (isset($_SESSION['id_utilisateur']) && !empty($_SESSION['id_utilisateur']) && $_SESSION['privilege_utilisateur']=="administrateur") {
if (!isset($infos_utilisateur[0]["active"]) || $infos_utilisateur[0]["active"]!=="1") {
header("Location: /services/traitements/utilisateurs/deconnexion.php?erreur=30");
die();
}
return "administrateur";
}
elseif (isset($_SESSION['id_utilisateur']) && !empty($_SESSION['id_utilisateur']) && $_SESSION['privilege_utilisateur']=="utilisateur") {
if (!isset($infos_utilisateur[0]["active"]) || $infos_utilisateur[0]["active"]!=="1") {
header("Location: /services/traitements/utilisateurs/deconnexion.php?erreur=30");
die();
}
return "utilisateur";
}
else {