Merge pull request 'Ajout code pour affichage du bouton si formulaire modifié' (#7) from nmorin into develop
Reviewed-on: #7pull/4/head
commit
1c6af168a6
@ -0,0 +1,20 @@
|
||||
const listedesentree = [];
|
||||
|
||||
function activationBoutonFlotant(lui) {
|
||||
if (listedesentree.find(function(valeur) {return valeur == lui.name;})) {
|
||||
for( var i = 0; i < listedesentree.length; i++){
|
||||
if ( listedesentree[i] === lui.name) {
|
||||
listedesentree.splice(i, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
listedesentree.push(lui.name);
|
||||
};
|
||||
console.log(listedesentree);
|
||||
if (listedesentree.length > 0){
|
||||
document.getElementById("enregistement").classList.remove("deactivation");
|
||||
}else{
|
||||
document.getElementById("enregistement").classList.add("deactivation");
|
||||
}
|
||||
}
|
After Width: | Height: | Size: 270 B |
After Width: | Height: | Size: 357 B |
@ -1,3 +1,4 @@
|
||||
<script src="/fichiers/js/bootstrap.bundle.min.js"></script>
|
||||
<script src="/fichiers/js/formulaire.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
@ -0,0 +1,323 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de fonctions permettant la la sauvegarde et la restauration des données de la base de la messagerie.
|
||||
*/
|
||||
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/connexion.php");
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
|
||||
/**
|
||||
* Fonction générant un fichier CSV avec le contenu des alias virtuels d'un utilisateur.
|
||||
* Ce fichier est créé à la volée et se popose à l'utilisateur pour téléchargement.
|
||||
*/
|
||||
function exportAliasVirtuelsUtilisateur($pdo,$utilisateur) {
|
||||
try {
|
||||
// Filtre des alias virtuels de l'utilisateur courant
|
||||
$req = 'SELECT * FROM postfix_alias_virtuels WHERE destination=:destination';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':destination',$utilisateur);
|
||||
$sql->execute();
|
||||
|
||||
$liste_alias_virtuels = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
$nom_fichier_csv="Alias-virtuels_".$utilisateur."_".date('d-m-Y').".csv";
|
||||
|
||||
// Entêtes HTTP permettant le téléchargement à la volée du CSV
|
||||
header("Content-Disposition: attachment; filename=\"$nom_fichier_csv\"");
|
||||
header("Content-Type: text/csv");
|
||||
|
||||
foreach ($liste_alias_virtuels as $alias_virtuel => $champ_alias_virtuel) {
|
||||
echo implode(":", $champ_alias_virtuel)."\n";
|
||||
}
|
||||
|
||||
// Le fait de tuer la page enclenche la demande de téléchargement à l'utilisateur qui ne quitte visuellement jamais la page des paramètres
|
||||
die();
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
die ("Erreur de requête d'export des alias virtuels utilisateur en CSV : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction générant un fichier CSV avec le contenu de la base Sqlite demandé par un administrateur.
|
||||
* Ce fichier est créé à la volée et se popose à l'administrateur pour téléchargement.
|
||||
*/
|
||||
function exportDonneesMessagerie($pdo,$types_donnees_a_exporter) {
|
||||
try {
|
||||
$nom_fichier_csv="Données_Courtail_".date('d-m-Y').".csv";
|
||||
|
||||
// Entêtes HTTP permettant le téléchargement à la volée du CSV
|
||||
header("Content-Disposition: attachment; filename=\"$nom_fichier_csv\"");
|
||||
header("Content-Type: text/csv");
|
||||
|
||||
foreach ($types_donnees_a_exporter as $cle_donnees_a_exporter => $type_donnee_a_exporter) {
|
||||
switch ($type_donnee_a_exporter) {
|
||||
case "alias_virtuels":
|
||||
$req = 'SELECT * FROM postfix_alias_virtuels';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->execute();
|
||||
|
||||
$liste_alias_virtuels = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
echo "#~// Alias_vituels\n";
|
||||
foreach ($liste_alias_virtuels as $alias_virtuel => $champ_alias_virtuel) {
|
||||
echo implode(":", $champ_alias_virtuel)."\n";
|
||||
}
|
||||
break;
|
||||
case "domaines":
|
||||
$req = 'SELECT * FROM postfix_domaines';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->execute();
|
||||
|
||||
$liste_domaines = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
echo "#~// Domaines\n";
|
||||
foreach ($liste_domaines as $domaine => $champ_domaine) {
|
||||
echo implode(":", $champ_domaine)."\n";
|
||||
}
|
||||
break;
|
||||
case "liste_noire_destinataires":
|
||||
$req = 'SELECT * FROM postfix_liste_noire_destinataires';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->execute();
|
||||
|
||||
$liste_liste_noire_destinataires = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
echo "#~// Liste_noire_destinataires\n";
|
||||
foreach ($liste_liste_noire_destinataires as $liste_noire_destinataire => $champ_liste_noire_destinataire) {
|
||||
echo implode(":", $champ_liste_noire_destinataire)."\n";
|
||||
}
|
||||
break;
|
||||
case "liste_noire_expediteurs":
|
||||
$req = 'SELECT * FROM postfix_liste_noire_expediteurs';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->execute();
|
||||
|
||||
$liste_liste_noire_expediteurs = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
echo "#~// Liste_noire_expéditeur\n";
|
||||
foreach ($liste_liste_noire_expediteurs as $liste_noire_expediteur => $champ_liste_noire_expediteur) {
|
||||
echo implode(":", $champ_liste_noire_expediteur)."\n";
|
||||
}
|
||||
break;
|
||||
case "utilisateurs":
|
||||
$req = 'SELECT * FROM postfix_utilisateurs';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->execute();
|
||||
|
||||
$liste_utilisateurs = $sql->fetchAll(PDO::FETCH_ASSOC);
|
||||
|
||||
echo "#~// Utilisateurs\n";
|
||||
foreach ($liste_utilisateurs as $liste_utilisateur => $champ_utilisateur) {
|
||||
echo implode(":", $champ_utilisateur)."\n";
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// Le fait de tuer la page enclenche la demande de téléchargement à l'utilisateur qui ne quitte visuellement jamais la page des paramètres
|
||||
die();
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
die ("Erreur de requête d'export des données de la base en CSV : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction important un fichier d'export d'alias virtuels utilisateur en CSV vers la base de données.
|
||||
*/
|
||||
function importAliasVirtuelsUtilisateur($pdo,$alias_virtuel,$utilisateur,$active) {
|
||||
try {
|
||||
// Insertion de l'alias virtuels parcouru dans le fichier CSV soumis pas l'utilisateur
|
||||
// Les contrôles de données ont étés effectués dans la page de traitement
|
||||
$req = 'INSERT INTO postfix_alias_virtuels (courriel,destination,active) VALUES (:alias_virtuel,:destination,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':alias_virtuel',htmlspecialchars($alias_virtuel));
|
||||
$sql->bindValue(':destination',htmlspecialchars($utilisateur));
|
||||
$sql->bindValue(':active',$active);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
// Récupération du code de retour de la commande SQLite
|
||||
$code_retour=$sql->errorInfo();
|
||||
|
||||
if ($code_retour[0]=="23000") {
|
||||
// Code de retour envoyé par le pilote PDO SQLite signifiant que la contrainte "UNIQUE" du champ "courriel" de la table "postif_alias_virtuels" est violée. Dans la mesure ou un contrôle d'unicité est effectué par la page de traitement, cette erreur signifie qu'un bogue est présent dans celui-ci
|
||||
header ("Location: /pages/gestion/administration.php?page=alias&erreur=3");
|
||||
die();
|
||||
}
|
||||
elseif ($code_retour[0]=="HY000") {
|
||||
// Code de retour envoyé par le pilote PDO SQLite lorsque la base de données n'est accessible qu'en lecture seule à www-data
|
||||
header ("Location: /pages/gestion/administration.php?page=alias&erreur=4");
|
||||
die();
|
||||
}
|
||||
else {
|
||||
// En cas d'erreur non gérée, le script s'arrête avec un message d'erreur à destination de l'administrateur du serveur
|
||||
die ("Erreur de requête d'import des alias virtuels utilisateur en CSV : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction important les données sauvegardées dans un fichier CSV par un administrateur avec la fonction exportDonneesMessagerie().
|
||||
*/
|
||||
function importDonneesMessagerie($pdo,$type_donnees_csv,$donnees_csv) {
|
||||
try {
|
||||
switch ($type_donnees_csv) {
|
||||
case "alias_virtuels":
|
||||
$req = 'INSERT INTO postfix_alias_virtuels (courriel,destination,active) VALUES (:alias_virtuel,:destination,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':alias_virtuel',htmlspecialchars($donnees_csv[1]));
|
||||
$sql->bindValue(':destination',htmlspecialchars($donnees_csv[2]));
|
||||
$sql->bindValue(':active',$donnees_csv[3]);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case "domaines":
|
||||
$req = 'INSERT INTO postfix_domaines (domaine,defaut,active) VALUES (:domaine,:defaut,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':domaine',htmlspecialchars($donnees_csv[1]));
|
||||
$sql->bindValue(':defaut',htmlspecialchars($donnees_csv[2]));
|
||||
$sql->bindValue(':active',$donnees_csv[3]);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case "liste_noire_destinataires":
|
||||
$req = 'INSERT INTO postfix_liste_noire_destinataires (courriel,action,active) VALUES (:courriel,:action,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':courriel',htmlspecialchars($donnees_csv[1]));
|
||||
$sql->bindValue(':action',htmlspecialchars($donnees_csv[2]));
|
||||
$sql->bindValue(':active',$donnees_csv[3]);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case "liste_noire_expediteurs":
|
||||
$req = 'INSERT INTO postfix_liste_noire_expediteurs (courriel,code_retour,message,active) VALUES (:courriel,:code_retour,:message,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':courriel',htmlspecialchars($donnees_csv[1]));
|
||||
$sql->bindValue(':code_retour',htmlspecialchars($donnees_csv[2]));
|
||||
$sql->bindValue(':message',htmlspecialchars($donnees_csv[3]));
|
||||
$sql->bindValue(':active',$donnees_csv[4]);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
case "utilisateurs":
|
||||
$req = 'INSERT INTO postfix_utilisateurs (utilisateur,mot_de_passe,nom_complet,rep_perso,uid,gid,privilege,prefixe,active) VALUES (:utilisateur,:mot_de_passe,:nom_complet,:rep_perso,:uid,:gid,:privilege,:prefixe,:active)';
|
||||
$sql=$pdo->prepare($req);
|
||||
$sql->bindValue(':utilisateur',htmlspecialchars($donnees_csv[1]));
|
||||
$sql->bindValue(':mot_de_passe',htmlspecialchars($donnees_csv[2]));
|
||||
$sql->bindValue(':nom_complet',htmlspecialchars($donnees_csv[3]));
|
||||
$sql->bindValue(':rep_perso',$donnees_csv[4]);
|
||||
$sql->bindValue(':uid',$donnees_csv[5]);
|
||||
$sql->bindValue(':gid',$donnees_csv[6]);
|
||||
$sql->bindValue(':privilege',$donnees_csv[7]);
|
||||
$sql->bindValue(':prefixe',$donnees_csv[8]);
|
||||
$sql->bindValue(':active',$donnees_csv[9]);
|
||||
$sql->execute();
|
||||
|
||||
if ($sql->rowCount() == 1){
|
||||
return true;
|
||||
}
|
||||
|
||||
else {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
die ("Erreur de requête d'import des données de la base en CSV : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Fonction de purge des tables permettant une importation fidèle des données contenues dans un ficher d'export CSV généré par la fonction exportDonneesMessagerie().
|
||||
*/
|
||||
function purgeTable($pdo,$table) {
|
||||
try {
|
||||
switch ($table) {
|
||||
case "postfix_alias_virtuels":
|
||||
$sql = $pdo->prepare('DELETE FROM postfix_alias_virtuels');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('UPDATE sqlite_sequence SET seq = 0 WHERE name = "postfix_alias_virtuels"');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('VACUUM');
|
||||
$sql->execute();
|
||||
break;
|
||||
case "postfix_domaines":
|
||||
$sql = $pdo->prepare('DELETE FROM postfix_domaines');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('UPDATE sqlite_sequence SET seq = 0 WHERE name = "postfix_domaines"');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('VACUUM');
|
||||
$sql->execute();
|
||||
break;
|
||||
case "postfix_liste_noire_destinataires":
|
||||
$sql = $pdo->prepare('DELETE FROM postfix_liste_noire_destinataires');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('UPDATE sqlite_sequence SET seq = 0 WHERE name = "postfix_liste_noire_destinataires"');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('VACUUM');
|
||||
$sql->execute();
|
||||
break;
|
||||
case "postfix_liste_noire_expediteurs":
|
||||
$sql = $pdo->prepare('DELETE FROM postfix_liste_noire_expediteurs');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('UPDATE sqlite_sequence SET seq = 0 WHERE name = "postfix_liste_noire_expediteurs"');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('VACUUM');
|
||||
$sql->execute();
|
||||
break;
|
||||
case "postfix_utilisateurs":
|
||||
$sql = $pdo->prepare('DELETE FROM postfix_utilisateurs');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('UPDATE sqlite_sequence SET seq = 0 WHERE name = "postfix_utilisateurs"');
|
||||
$sql->execute();
|
||||
$sql = $pdo->prepare('VACUUM');
|
||||
$sql->execute();
|
||||
break;
|
||||
}
|
||||
}
|
||||
catch (\Exception $e) {
|
||||
die ("Erreur de requête de purge d'une table : ".$e->getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
?>
|
@ -1,7 +1,216 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page centrale de gestion des paramètres d'un utilisateur et du portail lui-même.
|
||||
*/
|
||||
* Page centrale de gestion des paramètres d'un utilisateur et du portail lui-même.
|
||||
*/
|
||||
|
||||
?>
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
|
||||
|
||||
$liste_utilisateurs = listeUtilisateursPostfix($pdo);
|
||||
$prefixe_utilisateur = retournePrefixeUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur']);
|
||||
|
||||
if ($_SESSION['pseudo_connexion_utilisateur'] !== $_SESSION['pseudo_utilisateur']){
|
||||
$message_alert_utilisateur="<div class=\"alert alert-warning mt-2 mb-2\" role=\"alert\"><img src=\"/fichiers/svg/alert-triangle-warning.svg\"/> Vous allez modifier les paramètres d'un autre utilisateur que vous.</div>";
|
||||
}else{
|
||||
$message_alert_utilisateur="";
|
||||
}
|
||||
|
||||
/**
|
||||
* Affiche le formulaire de selection d'un utilisateur si celui connecté possède les privilèges administrateur.
|
||||
*/
|
||||
|
||||
if (testPrivileges()==="administrateur") {
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12">
|
||||
<div class="card mt-4">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Choix de l'adresse</h5>
|
||||
<form id="form_choix_utilisateur" action="/services/traitements/utilisateurs/changeUtilisateur.php" method="post">
|
||||
<select class="form-select" name="choix_utilisateur" onchange="autoSoumission(this);">
|
||||
_HEREDOC_;
|
||||
|
||||
/**
|
||||
* Remplis un menu déroulant permettant le choix de l'utilisateur par l'administrateur.
|
||||
* Ce choix permettra de modifier les données y étant rattachés.
|
||||
* La valeur par défaut du menu est positionnée sur le compte administrateur actuellement connecté.
|
||||
*/
|
||||
foreach ($liste_utilisateurs as $utilisateur_bdd => $utilisateur) {
|
||||
if ($utilisateur['utilisateur']===$_SESSION['pseudo_utilisateur']) {
|
||||
echo "<option value=\"".$utilisateur['utilisateur']."\" selected>".$utilisateur['utilisateur']."</option>\n";
|
||||
}
|
||||
elseif ($_SESSION['privilege_utilisateur']==="administrateur") {
|
||||
echo "<option value=\"".$utilisateur['utilisateur']."\">".$utilisateur['utilisateur']."</option>\n";
|
||||
}
|
||||
}
|
||||
|
||||
echo <<<_HEREDOC_
|
||||
</select>
|
||||
<input type="hidden" name="page_origine" value="parametres">
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
}
|
||||
|
||||
/**
|
||||
* Changement du mot de passe d'un utilisateur.
|
||||
*/
|
||||
if ($_SESSION['privilege_utilisateur']==="administrateur" && !empty($prefixe_utilisateur)){
|
||||
$message="<div class=\"mt-2 mb-2 alert alert-primary\" role=\"alert\">Préfixe actuel de ".$_SESSION['pseudo_utilisateur']." : <span class=\"badge bg-primary\">".$prefixe_utilisateur."</span></div>";
|
||||
}else{
|
||||
$message="";
|
||||
}
|
||||
?>
|
||||
<div class="row">
|
||||
<div class="col-12 col-md-12<?php if ($_SESSION['privilege_utilisateur']==="administrateur") {echo ' col-xl-6';}?>">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Modifier le mot de passe<?php if ($_SESSION['privilege_utilisateur']==="administrateur") {echo ' de '.$_SESSION['pseudo_utilisateur'];} ?></h5>
|
||||
<?php echo $message_alert_utilisateur; ?>
|
||||
<form action="/services/traitements/utilisateurs/changeMotDePasseUtilisateur.php" method="post">
|
||||
<div class="input-group">
|
||||
<?php if ($_SESSION['privilege_utilisateur']==="utilisateur") { echo '<input type="password" class="form-control" name="ancien_mot_de_passe" placeholder="Ancien mot de passe" required>'; } ?>
|
||||
<input type="password" class="form-control" name="nouveau_mot_de_passe" placeholder="Nouveau mot de passe" required>
|
||||
<input type="password" class="form-control" name="confirmation_mot_de_passe" placeholder="Confirmation mot de passe" required>
|
||||
<button class="btn btn-primary bouton-ajout" type="submit">Modifier</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
if ($_SESSION['privilege_utilisateur']==="administrateur") {
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12 col-md-12 col-xl-6">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Modifier le préfixe de {$_SESSION['pseudo_utilisateur']}</h5>
|
||||
{$message}
|
||||
{$message_alert_utilisateur}
|
||||
<form action="/services/traitements/utilisateurs/changePrefixeUtilisateur.php" method="post">
|
||||
<div class="input-group">
|
||||
<input class="form-control" type="text" name="nouveau_prefixe" placeholder="Nouveau prefixe">
|
||||
<button class="btn btn-primary bouton-ajout" type="submit">Appliquer</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
}
|
||||
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12 col-md-12 col-xl-6">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Sauvegarde des alias virtuels de {$_SESSION['pseudo_utilisateur']}</h5>
|
||||
<form action="/services/traitements/import_export/exportAliasVirtuelsUtilisateur.php" method="post">
|
||||
<button class="btn btn-primary w-100" type="submit">Sauvegarder</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12 col-md-12 col-xl-6">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Restauration des alias virtuels de {$_SESSION['pseudo_utilisateur']}</h5>
|
||||
<div class="alert alert-primary" role="alert">Les doublons seront omis.</div>
|
||||
{$message_alert_utilisateur}
|
||||
<form action="/services/traitements/import_export/importAliasVirtuelsUtilisateur.php" method="post" enctype="multipart/form-data">
|
||||
<div class="input-group mt-2">
|
||||
<input type="file" name="import_alias_virtuels_csv" class="form-control">
|
||||
<button class="btn btn-primary bouton-ajout" type="submit">Restaurer</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
|
||||
if ($_SESSION['privilege_utilisateur']==="administrateur") {
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12 col-md-12 col-xl-6">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Sauvegarde de la base de données</h5>
|
||||
<form action="/services/traitements/import_export/exportDonneesBdd.php" method="post">
|
||||
<div class="row g-1">
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="export_alias_virtuels" name="export_alias_virtuels" checked>
|
||||
<label class="form-check-label" for="export_alias_virtuels">Alias virtuels</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="export_domaines" name="export_domaines" checked>
|
||||
<label class="form-check-label" for="export_domaines">Domaines</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="export_liste_noire_destinataires" name="export_liste_noire_destinataires" checked>
|
||||
<label class="form-check-label" for="export_liste_noire_destinataires">Liste noire destinataires</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="export_liste_noire_expediteurs" name="export_liste_noire_expediteurs" checked>
|
||||
<label class="form-check-label" for="export_liste_noire_expediteurs">Liste noire expéditeurs</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="export_utilisateurs" name="export_utilisateurs" checked>
|
||||
<label class="form-check-label" for="export_utilisateurs">Utilisateurs</label>
|
||||
</div>
|
||||
</div>
|
||||
<button class="btn btn-primary w-100 mt-2" type="submit">Sauvegarder</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
}
|
||||
|
||||
if ($_SESSION['privilege_utilisateur']==="administrateur") {
|
||||
echo <<<_HEREDOC_
|
||||
<div class="col-12 col-md-12 col-xl-6">
|
||||
<div class="card mt-4 max-hauteur-pastille">
|
||||
<div class="card-body">
|
||||
<h5 class="card-title">Restauration de la base de données</h5>
|
||||
<div class="alert alert-warning" role="alert"><img src="/fichiers/svg/alert-triangle-warning.svg"/> Toutes les données non sauvegardées dans chaque section sélectionnée et présente dans votre fichier de restauration seront écrasées !</div>
|
||||
<form action="/services/traitements/import_export/importDonneesBdd.php" method="post" enctype="multipart/form-data">
|
||||
<div class="row g-1 mt-2 mb-2">
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="import_alias_virtuels" name="import_alias_virtuels">
|
||||
<label class="form-check-label" for="import_alias_virtuels">Alias virtuels</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="import_domaines" name="import_domaines">
|
||||
<label class="form-check-label" for="import_domaines">Domaines</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="import_liste_noire_destinataires" name="import_liste_noire_destinataires">
|
||||
<label class="form-check-label" for="import_liste_noire_destinataires">Liste noire destinataires</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="import_liste_noire_expediteurs" name="import_liste_noire_expediteurs">
|
||||
<label class="form-check-label" for="import_liste_noire_expediteurs">Liste noire expéditeurs</label>
|
||||
</div>
|
||||
<div class="form-check form-switch col-12 col-sm-12 col-md-6">
|
||||
<input class="form-check-input" type="checkbox" role="switch" id="import_utilisateurs" name="import_utilisateurs">
|
||||
<label class="form-check-label" for="import_utilisateurs">Utilisateurs</label>
|
||||
</div>
|
||||
</div>
|
||||
<div class="input-group mb-2">
|
||||
<input type="file" name="import_donnees_csv" class="form-control">
|
||||
<button class="btn btn-primary bouton-ajout" type="submit">Restaurer</button>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
_HEREDOC_;
|
||||
}
|
||||
|
||||
?>
|
||||
</div>
|
||||
|
||||
<script src="/fichiers/js/filtre.js"></script>
|
||||
|
@ -0,0 +1,18 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant l'export des alias virtuels d'un utilisateur.
|
||||
* Elle est appelée par un bouton de la page des paramètres.
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
testPrivileges();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/import_export.php");
|
||||
|
||||
exportAliasVirtuelsUtilisateur($pdo,$_SESSION['pseudo_utilisateur']);
|
||||
// La suite n'est pas interprété en temps normal
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres");
|
||||
die();
|
||||
|
||||
?>
|
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant l'export des alias virtuels d'un utilisateur.
|
||||
* Elle est appelée par un bouton de la page des paramètres.
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
if (testPrivileges()!="administrateur") {
|
||||
header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
|
||||
die();
|
||||
}
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/import_export.php");
|
||||
|
||||
$types_donnees_a_exporter=array();
|
||||
if (isset($_POST['export_alias_virtuels']) && $_POST['export_alias_virtuels']==="on") {
|
||||
array_push($types_donnees_a_exporter, 'alias_virtuels');
|
||||
}
|
||||
if (isset($_POST['export_domaines']) && $_POST['export_domaines']==="on") {
|
||||
array_push($types_donnees_a_exporter, 'domaines');
|
||||
}
|
||||
if (isset($_POST['export_liste_noire_destinataires']) && $_POST['export_liste_noire_destinataires']==="on") {
|
||||
array_push($types_donnees_a_exporter, 'liste_noire_destinataires');
|
||||
}
|
||||
if (isset($_POST['export_liste_noire_expediteurs']) && $_POST['export_liste_noire_expediteurs']==="on") {
|
||||
array_push($types_donnees_a_exporter, 'liste_noire_expediteurs');
|
||||
}
|
||||
if (isset($_POST['export_utilisateurs']) && $_POST['export_utilisateurs']==="on") {
|
||||
array_push($types_donnees_a_exporter, 'utilisateurs');
|
||||
}
|
||||
|
||||
exportDonneesMessagerie($pdo,$types_donnees_a_exporter);
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres");
|
||||
die();
|
||||
|
||||
?>
|
@ -0,0 +1,63 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant l'import des alias virtuels d'un utilisateur.
|
||||
* Elle est appelée par un bouton de la page des paramètres.
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
testPrivileges();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/import_export.php");
|
||||
|
||||
// Permet le contrôle du domaine des alias virtuels du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
||||
$liste_domaines = listeDomainesPostfix($pdo);
|
||||
// Permet le contrôle des alias virtuels du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
||||
|
||||
$types_donnees_a_exporter=array();
|
||||
if (isset($_FILES['import_alias_virtuels_csv']) && !empty($_FILES['import_alias_virtuels_csv']['name']) && $_FILES['import_alias_virtuels_csv']['type']=="text/csv" && $_FILES['import_alias_virtuels_csv']['error']===0) {
|
||||
if ($_FILES['import_alias_virtuels_csv']['size']<2000000) {
|
||||
if (file_exists($_FILES['import_alias_virtuels_csv']['tmp_name'])) {
|
||||
if (($fichier_csv = fopen($_FILES['import_alias_virtuels_csv']['tmp_name'], "r")) !== FALSE) {
|
||||
while (($donnees_csv = fgetcsv($fichier_csv, 1000, ":")) !== FALSE) {
|
||||
// Vérification de la légitimité des alais virtuels importés
|
||||
// Si un utilisateur modifie le contenu du fichier CSV afin d'ajouter des alias virtuels à un autre utilisateur, aucun traitement pour cet alias virtuel n'est effectué
|
||||
if ($donnees_csv[2]===$_SESSION['pseudo_utilisateur']) {
|
||||
// Vérification de l'existence du domaine de l'alias virtuel soumis
|
||||
$domaine_alias_virtuel_csv=explode('@', $donnees_csv[1]);
|
||||
if (in_array($domaine_alias_virtuel_csv[1],array_column($liste_domaines,'domaine'))) {
|
||||
// Vérification de la cohérence de l'état d'activation de l'alias virtuel soumis
|
||||
if ($donnees_csv[3]==0 || $donnees_csv[3]==1) {
|
||||
// Omission des doublons
|
||||
$liste_alias_virtuels = listeAliasVirtuelsPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_alias_virtuels,'courriel'))) {
|
||||
importAliasVirtuelsUtilisateur($pdo,$donnees_csv[1],$_SESSION['pseudo_utilisateur'],$donnees_csv[3]);
|
||||
}
|
||||
// Sinon l'alias virtuel doublon est ignoré
|
||||
}
|
||||
// Sinon l'alias virtuel contenant un état d'activation erroné est ignoré
|
||||
}
|
||||
// Sinon l'alias virtuel contenant un domaine non existant dans la base est ignoré
|
||||
}
|
||||
// Sinon l'alias virtuel pointant sur un autre utilisateur est ignoré
|
||||
}
|
||||
fclose($fichier_csv);
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=18");
|
||||
die();
|
||||
}
|
||||
}
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=18");
|
||||
die();
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=23");
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=22");
|
||||
die();
|
||||
|
||||
?>
|
@ -0,0 +1,153 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant l'import des données dans la base de données.
|
||||
* Elle est appelée par un bouton de la page des paramètres.
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
if (testPrivileges()!="administrateur") {
|
||||
header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
|
||||
die();
|
||||
}
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/import_export.php");
|
||||
|
||||
// Permet le contrôle du domaine des alias virtuels du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
||||
$liste_domaines = listeDomainesPostfix($pdo);
|
||||
// Permet le contrôle des alias virtuels du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
||||
// Permet le contrôle des listes noires du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||
// Permet le contrôle des utilisateurs du CSV de l'utilisateur
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
|
||||
|
||||
$types_donnees_a_exporter=array();
|
||||
|
||||
// Si aucune case n'est coché pour l'importation, le script ne fait rien et renvoi l'utilisateur sur la page des paramètres
|
||||
if (!isset($_POST) || empty($_POST)) {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=24");
|
||||
die();
|
||||
}
|
||||
|
||||
if (isset($_FILES['import_donnees_csv']) && !empty($_FILES['import_donnees_csv']['name']) && $_FILES['import_donnees_csv']['type']=="text/csv" && $_FILES['import_donnees_csv']['error']===0) {
|
||||
if ($_FILES['import_donnees_csv']['size']<2000000) {
|
||||
if (file_exists($_FILES['import_donnees_csv']['tmp_name'])) {
|
||||
|
||||
$ligne_fichier_csv=1;
|
||||
$type_donnees_csv="";
|
||||
if (($fichier_csv = fopen($_FILES['import_donnees_csv']['tmp_name'], "r")) !== FALSE) {
|
||||
while (($donnees_csv = fgetcsv($fichier_csv, 1000, ":")) !== FALSE) {
|
||||
|
||||
$entete_type_donnees=FALSE;
|
||||
if (strpos($donnees_csv[0], '#~// ') !== FALSE) {
|
||||
$type_donnees_csv=explode('#~// ', $donnees_csv[0]);
|
||||
$entete_type_donnees=TRUE;
|
||||
}
|
||||
if (!$entete_type_donnees) {
|
||||
switch ($type_donnees_csv[1]) {
|
||||
case "Alias_vituels":
|
||||
if (isset($_POST['import_alias_virtuels'])) {
|
||||
if (!isset($purge_table_alias_virtuels)) {
|
||||
purgeTable($pdo,'postfix_alias_virtuels');
|
||||
$purge_table_alias_virtuels="";
|
||||
}
|
||||
// Vérification de la cohérence des données de l'alias virtuel soumis
|
||||
if (!empty($donnees_csv[1]) && !empty($donnees_csv[2]) && ($donnees_csv[3]==="0" || $donnees_csv[3]==="1")) {
|
||||
// Omission des doublons
|
||||
$liste_alias_virtuels = listeTousAliasVirtuelsPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_alias_virtuels,'courriel'))) {
|
||||
importDonneesMessagerie($pdo,"alias_virtuels",$donnees_csv);
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
case "Domaines":
|
||||
if (isset($_POST['import_domaines'])) {
|
||||
if (!isset($purge_table_domaines)) {
|
||||
purgeTable($pdo,'postfix_domaines');
|
||||
$purge_table_domaines="";
|
||||
}
|
||||
// Vérification de la cohérence des données du domaine soumis
|
||||
if (!empty($donnees_csv[1]) && ($donnees_csv[2]==="0" || $donnees_csv[2]==="1") && ($donnees_csv[3]==="0" || $donnees_csv[3]==="1")) {
|
||||
// Omission des doublons
|
||||
$liste_domaines = listeDomainesPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_domaines,'domaine'))) {
|
||||
importDonneesMessagerie($pdo,"domaines",$donnees_csv);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "Liste_noire_destinataires":
|
||||
if (isset($_POST['import_liste_noire_destinataires'])) {
|
||||
if (!isset($purge_table_postfix_liste_noire_destinataires)) {
|
||||
purgeTable($pdo,'postfix_liste_noire_destinataires');
|
||||
$purge_table_postfix_liste_noire_destinataires="";
|
||||
}
|
||||
// Vérification de la cohérence des données de la liste noire destinataire soumise
|
||||
if (!empty($donnees_csv[1]) && ($donnees_csv[2]==="REJECT" || $donnees_csv[2]==="DEFER") && ($donnees_csv[3]==="0" || $donnees_csv[3]==="1")) {
|
||||
// Omission des doublons
|
||||
$liste_entrees_liste_noires_dst=listeEntreeListeNoireDstPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_entrees_liste_noires_dst,'courriel'))) {
|
||||
importDonneesMessagerie($pdo,"liste_noire_destinataires",$donnees_csv);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "Liste_noire_expéditeur":
|
||||
if (isset($_POST['import_liste_noire_expediteurs'])) {
|
||||
if (!isset($purge_table_postfix_liste_noire_expediteurs)) {
|
||||
purgeTable($pdo,'postfix_liste_noire_expediteurs');
|
||||
$purge_table_postfix_liste_noire_expediteurs="";
|
||||
}
|
||||
// Vérification de la cohérence des données de la liste noire expediteur soumise
|
||||
if (!empty($donnees_csv[1]) && ($donnees_csv[2]==="554") && !empty($donnees_csv[3]) && ($donnees_csv[4]==="0" || $donnees_csv[4]==="1")) {
|
||||
// Omission des doublons
|
||||
$liste_entrees_liste_noires_exp=listeEntreeListeNoireExpPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_entrees_liste_noires_exp,'courriel'))) {
|
||||
importDonneesMessagerie($pdo,"liste_noire_expediteurs",$donnees_csv);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case "Utilisateurs":
|
||||
if (isset($_POST['import_utilisateurs'])) {
|
||||
if (!isset($purge_table_postfix_utilisateurs)) {
|
||||
purgeTable($pdo,'postfix_utilisateurs');
|
||||
$purge_table_postfix_utilisateurs="";
|
||||
}
|
||||
// Vérification de la cohérence des données de l'utilisateur soumis
|
||||
if (!empty($donnees_csv[1]) && !empty($donnees_csv[2]) && !empty($donnees_csv[4]) && !empty($donnees_csv[5]) && !empty($donnees_csv[6]) && !empty($donnees_csv[7]) && ($donnees_csv[9]==="0" || $donnees_csv[9]==="1")) {
|
||||
// Omission des doublons
|
||||
$liste_utilisateurs=listeUtilisateursPostfix($pdo);
|
||||
if (!in_array($donnees_csv[1],array_column($liste_utilisateurs,'utilisateur'))) {
|
||||
importDonneesMessagerie($pdo,"utilisateurs",$donnees_csv);
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
fclose($fichier_csv);
|
||||
// Si l'utilisateur ayant importé les données n'existe plus, une déconnexion automatique est effectuée
|
||||
if (!verifUtilisateursExiste($pdo,$_SESSION['pseudo_connexion_utilisateur'])) {
|
||||
header ("Location: /services/traitements/utilisateurs/deconnexion.php?succes=19");
|
||||
die();
|
||||
}
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=18");
|
||||
die();
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=23");
|
||||
die();
|
||||
}
|
||||
}
|
||||
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=22");
|
||||
die();
|
||||
|
||||
?>
|
@ -0,0 +1,45 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant le changement du mot de passe d'un utilisateur.
|
||||
* Elle est appelée par la page de paramètres.
|
||||
* Un champ supplémentaire demandant l'ancien mot de passe est affiché et exigé sur cette derniere lorsque la requête provient d'un utilisateur ordinaire.
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
testPrivileges();
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
|
||||
|
||||
if ($_SESSION['privilege_utilisateur']=="administrateur" && isset($_POST['nouveau_mot_de_passe']) && !empty($_POST['nouveau_mot_de_passe']) && isset($_POST['confirmation_mot_de_passe']) && !empty($_POST['confirmation_mot_de_passe'])) {
|
||||
if (changeMotDePasseUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['nouveau_mot_de_passe']),trim($_POST['confirmation_mot_de_passe']))) {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=16");
|
||||
die();
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=21");
|
||||
die();
|
||||
}
|
||||
}
|
||||
elseif ($_SESSION['privilege_utilisateur']=="utilisateur" && isset($_POST['ancien_mot_de_passe']) && !empty($_POST['ancien_mot_de_passe']) && isset($_POST['nouveau_mot_de_passe']) && !empty($_POST['nouveau_mot_de_passe']) && isset($_POST['confirmation_mot_de_passe']) && !empty($_POST['confirmation_mot_de_passe'])) {
|
||||
if (verificationMotDePasseUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['ancien_mot_de_passe']))) {
|
||||
if (changeMotDePasseUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['nouveau_mot_de_passe']),trim($_POST['confirmation_mot_de_passe']))) {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=16");
|
||||
die();
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=21");
|
||||
die();
|
||||
}
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&erreur=20");
|
||||
die();
|
||||
}
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
|
||||
die();
|
||||
}
|
||||
|
||||
?>
|
@ -0,0 +1,27 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Page de traitement permettant le changement du préfixe d'un utilisateur.
|
||||
* Elle est appelée par la page de paramètres.
|
||||
* Un champ accessible aux seuls administrateurs permet de changer le préfixe d'un utilisateur (peut être vide).
|
||||
*/
|
||||
|
||||
session_start();
|
||||
require_once($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||
if (testPrivileges()!="administrateur") {
|
||||
header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
|
||||
die();
|
||||
}
|
||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/utilisateurs.php");
|
||||
|
||||
if ($_SESSION['privilege_utilisateur']=="administrateur" && isset($_POST['nouveau_prefixe'])) {
|
||||
changePrefixeUtilisateurPostfix($pdo,$_SESSION['pseudo_utilisateur'],trim($_POST['nouveau_prefixe']));
|
||||
header ("Location: /pages/gestion/administration.php?page=parametres&succes=17");
|
||||
die();
|
||||
}
|
||||
else {
|
||||
header ("Location: /pages/visiteurs/formulaire_accueil.php?erreur=18");
|
||||
die();
|
||||
}
|
||||
|
||||
?>
|
Loading…
Reference in new issue