develop dans master - première version stable #9
@@ -8,7 +8,7 @@ echo <<<_HEREDOC_
|
|||||||
<div>
|
<div>
|
||||||
<table>
|
<table>
|
||||||
<tr>
|
<tr>
|
||||||
<td><span>Courtail</span></td>
|
<td><a href="/pages/gestion/administration.php?page=accueil">Courtail</a></td>
|
||||||
<td><a href="/pages/gestion/administration.php?page=alias">Alias</a></td>
|
<td><a href="/pages/gestion/administration.php?page=alias">Alias</a></td>
|
||||||
_HEREDOC_;
|
_HEREDOC_;
|
||||||
if (testPrivileges()=="administrateur") {
|
if (testPrivileges()=="administrateur") {
|
||||||
|
|||||||
@@ -11,64 +11,16 @@ testPrivileges();
|
|||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/inclusions/entete.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/inclusions/entete.php");
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/inclusions/barre_menu.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/inclusions/barre_menu.php");
|
||||||
|
|
||||||
|
require_once($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/messages/messages.php");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Affichage d'une bannière d'état sur l'action précedemment effectuée.
|
* Affichage d'une bannière d'état sur l'action précedemment effectuée.
|
||||||
*/
|
*/
|
||||||
if (isset($_GET['erreur']) && !empty($_GET['erreur'])) {
|
if (isset($_GET['erreur']) && !empty($_GET['erreur'])) {
|
||||||
switch ($_GET['erreur']) {
|
retourneMessage('erreurs',$_GET['erreur']);
|
||||||
case 1:
|
|
||||||
echo "<p class=\"message_suppr_ko\">Erreur : aucun alias virtuel supprimé.</p>";
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : aucun alias virtuel créé car une donnée est erronée ou manquante.</p>";
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : L'alias virtuel est déjà existant.</p>";
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : Code d'erreur générique (HY000) signifiant probablement que la base SQLite n'est pas accessible en écriture. Il faut que la base et le répertoire <i>bdd</i> appartiennent à <i>www-data</i>.</p>";
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
echo "<p class=\"message_suppr_ko\">Erreur : aucun domaine supprimé.</p>";
|
|
||||||
break;
|
|
||||||
case 6:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : aucun domaine créé car une donnée est erronée ou manquante.</p>";
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : Le domaine est déjà existant.</p>";
|
|
||||||
break;
|
|
||||||
case 8:
|
|
||||||
echo "<p class=\"message_ajout_ko\">Erreur : Le domaine par défaut n'a pas été modifié.</p>";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
elseif (isset($_GET['succes']) && !empty($_GET['succes'])) {
|
elseif (isset($_GET['succes']) && !empty($_GET['succes'])) {
|
||||||
switch ($_GET['succes']) {
|
retourneMessage('succes',$_GET['succes']);
|
||||||
case 1:
|
|
||||||
echo "<p class=\"message_ajout_ok\">Succès : alias virtuel créé avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 2:
|
|
||||||
echo "<p class=\"message_modif_ok\">Succès : alias virtuel modifiés avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 3:
|
|
||||||
echo "<p class=\"message_suppr_ok\">Succès : alias virtuel supprimé avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 4:
|
|
||||||
echo "<p class=\"message_ajout_ok\">Succès : utilisateur changé en ".$_SESSION['pseudo_utilisateur']." avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 5:
|
|
||||||
echo "<p class=\"message_ajout_ok\">Succès : domaine créé avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 6:
|
|
||||||
echo "<p class=\"message_modif_ok\">Succès : domaine modifiés avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 7:
|
|
||||||
echo "<p class=\"message_suppr_ok\">Succès : domaine supprimé avec succès.</p>";
|
|
||||||
break;
|
|
||||||
case 8:
|
|
||||||
echo "<p class=\"message_suppr_ok\">Succès : domaine défini par défaut avec succès.</p>";
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -76,6 +28,9 @@ elseif (isset($_GET['succes']) && !empty($_GET['succes'])) {
|
|||||||
*/
|
*/
|
||||||
if (isset($_GET['page']) && !empty($_GET['page'])) {
|
if (isset($_GET['page']) && !empty($_GET['page'])) {
|
||||||
switch ($_GET['page']) {
|
switch ($_GET['page']) {
|
||||||
|
case 'accueil':
|
||||||
|
require_once($_SERVER["DOCUMENT_ROOT"]."/services/gestion/alias_virtuels.php");
|
||||||
|
break;
|
||||||
case 'alias':
|
case 'alias':
|
||||||
require_once($_SERVER["DOCUMENT_ROOT"]."/services/gestion/alias_virtuels.php");
|
require_once($_SERVER["DOCUMENT_ROOT"]."/services/gestion/alias_virtuels.php");
|
||||||
break;
|
break;
|
||||||
@@ -85,8 +40,14 @@ if (isset($_GET['page']) && !empty($_GET['page'])) {
|
|||||||
case 'listes_noires':
|
case 'listes_noires':
|
||||||
require_once($_SERVER["DOCUMENT_ROOT"]."/services/gestion/listes_noires.php");
|
require_once($_SERVER["DOCUMENT_ROOT"]."/services/gestion/listes_noires.php");
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
echo "<h1>Cette page n'existe pas.</h1>";
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
echo "<h1>Cette page n'existe pas.</h1>";
|
||||||
|
}
|
||||||
|
|
||||||
require_once($_SERVER["DOCUMENT_ROOT"]."/inclusions/pied.php");
|
require_once($_SERVER["DOCUMENT_ROOT"]."/inclusions/pied.php");
|
||||||
|
|
||||||
|
|||||||
@@ -48,14 +48,14 @@ function listeAliasVirtuelsPostfix($pdo) {
|
|||||||
/**
|
/**
|
||||||
* Fonction d'ajout d'un alias virtuel.
|
* Fonction d'ajout d'un alias virtuel.
|
||||||
*/
|
*/
|
||||||
function ajoutAliasVirtuelsPostfix($pdo) {
|
function ajoutAliasVirtuelsPostfix($pdo,$nom_alias_virtuel,$choix_domaine_alias_virtuel) {
|
||||||
try {
|
try {
|
||||||
// Insertion de l'alias virtuel entré par l'utilisateur et lié avec son adresse
|
// Insertion de l'alias virtuel entré par l'utilisateur et lié avec son adresse
|
||||||
$req='INSERT INTO postfix_alias_virtuels (courriel,destination,active) VALUES (:alias_virtuel,:courriel,1)';
|
$req='INSERT INTO postfix_alias_virtuels (courriel,destination,active) VALUES (:alias_virtuel,:courriel,1)';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
$sql->bindValue(':courriel',$_SESSION['pseudo_utilisateur']);
|
$sql->bindValue(':courriel',$_SESSION['pseudo_utilisateur']);
|
||||||
$sql->bindValue(':alias_virtuel',retournePrefixeUtilisateurPostfix($pdo).$_POST['nom_alias']."@".$_POST['choix_domaine_alias']);
|
$sql->bindValue(':alias_virtuel',substr(htmlspecialchars(retournePrefixeUtilisateurPostfix($pdo).$nom_alias_virtuel."@".$choix_domaine_alias_virtuel),0,49));
|
||||||
$sql->execute();
|
$sql->execute();
|
||||||
|
|
||||||
if ($sql->rowCount() == 1){
|
if ($sql->rowCount() == 1){
|
||||||
@@ -92,10 +92,10 @@ function ajoutAliasVirtuelsPostfix($pdo) {
|
|||||||
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des alias virtuels d'un utilisateur.
|
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des alias virtuels d'un utilisateur.
|
||||||
* Elle occasionnera peut-être des baisses de performance si un très grand nombre d'alias virtuels existe pour un utilisateur donné (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
* Elle occasionnera peut-être des baisses de performance si un très grand nombre d'alias virtuels existe pour un utilisateur donné (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
||||||
*/
|
*/
|
||||||
function modifEtatAliasVirtuelsPostfix($pdo) {
|
function modifEtatAliasVirtuelsPostfix($pdo,$retour_form) {
|
||||||
try {
|
try {
|
||||||
$compteModifs=0;
|
$compteModifs=0;
|
||||||
foreach ($_POST as $id_alias_virtuel => $etat_alias_virtuel) {
|
foreach ($retour_form as $id_alias_virtuel => $etat_alias_virtuel) {
|
||||||
$req='UPDATE postfix_alias_virtuels SET active=:etat_alias_virtuel WHERE id=:id_alias_virtuel AND destination=:pseudo_utilisateur';
|
$req='UPDATE postfix_alias_virtuels SET active=:etat_alias_virtuel WHERE id=:id_alias_virtuel AND destination=:pseudo_utilisateur';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
@@ -124,12 +124,12 @@ function modifEtatAliasVirtuelsPostfix($pdo) {
|
|||||||
/**
|
/**
|
||||||
* Fonction de suppression d'un alias virtuel.
|
* Fonction de suppression d'un alias virtuel.
|
||||||
*/
|
*/
|
||||||
function supprAliasVirtuelsPostfix($pdo) {
|
function supprAliasVirtuelsPostfix($pdo,$suppr_alias_virtuel) {
|
||||||
try {
|
try {
|
||||||
$req='DELETE FROM postfix_alias_virtuels WHERE id=:id_alias_virtuel AND destination=:pseudo_utilisateur';
|
$req='DELETE FROM postfix_alias_virtuels WHERE id=:id_alias_virtuel AND destination=:pseudo_utilisateur';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
$sql->bindValue(':id_alias_virtuel',$_GET['supprAliasVirtuel']);
|
$sql->bindValue(':id_alias_virtuel',$suppr_alias_virtuel);
|
||||||
$sql->bindValue(':pseudo_utilisateur',$_SESSION['pseudo_utilisateur']);
|
$sql->bindValue(':pseudo_utilisateur',$_SESSION['pseudo_utilisateur']);
|
||||||
$sql->execute();
|
$sql->execute();
|
||||||
|
|
||||||
|
|||||||
@@ -73,14 +73,14 @@ function changeDomaineDefautPostfix($pdo,$choix_domaine_defaut) {
|
|||||||
}
|
}
|
||||||
else {
|
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
|
// 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 de modification d'état pour les alias virtuels : ".$e->getMessage());
|
die ("Erreur de requête de modification de préférence pour le domaine par défaut : ".$e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Fonction d'ajout d'un alias virtuel.
|
* Fonction d'ajout d'un domaine.
|
||||||
*/
|
*/
|
||||||
function ajoutDomainePostfix($pdo,$nom_domaine) {
|
function ajoutDomainePostfix($pdo,$nom_domaine) {
|
||||||
try {
|
try {
|
||||||
@@ -88,7 +88,7 @@ function ajoutDomainePostfix($pdo,$nom_domaine) {
|
|||||||
$req='INSERT INTO postfix_domaines (domaine,defaut,active) VALUES (:domaine,0,1)';
|
$req='INSERT INTO postfix_domaines (domaine,defaut,active) VALUES (:domaine,0,1)';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
$sql->bindValue(':domaine',$nom_domaine);
|
$sql->bindValue(':domaine',substr(htmlspecialchars($nom_domaine),0,49));
|
||||||
$sql->execute();
|
$sql->execute();
|
||||||
|
|
||||||
if ($sql->rowCount() == 1){
|
if ($sql->rowCount() == 1){
|
||||||
@@ -105,7 +105,7 @@ function ajoutDomainePostfix($pdo,$nom_domaine) {
|
|||||||
|
|
||||||
if ($code_retour[0]=="23000") {
|
if ($code_retour[0]=="23000") {
|
||||||
// Code de retour envoyé par le pilote PDO SQLite signifiant que la contrainte "UNIQUE" du champ "domaine" de la table "postfix_domaines" est violée. Le domaine envoyé via le formulaire par l'administrateur a déjà été renseigné dans la base
|
// Code de retour envoyé par le pilote PDO SQLite signifiant que la contrainte "UNIQUE" du champ "domaine" de la table "postfix_domaines" est violée. Le domaine envoyé via le formulaire par l'administrateur a déjà été renseigné dans la base
|
||||||
header ("Location: /pages/gestion/administration.php?page=domaines&erreur=3");
|
header ("Location: /pages/gestion/administration.php?page=domaines&erreur=7");
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
elseif ($code_retour[0]=="HY000") {
|
elseif ($code_retour[0]=="HY000") {
|
||||||
@@ -115,7 +115,7 @@ function ajoutDomainePostfix($pdo,$nom_domaine) {
|
|||||||
}
|
}
|
||||||
else {
|
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
|
// 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'ajout d'alias virtuel : ".$e->getMessage());
|
die ("Erreur de requête d'ajout d'un domaine : ".$e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -125,10 +125,10 @@ function ajoutDomainePostfix($pdo,$nom_domaine) {
|
|||||||
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des domaines d'un utilisateur.
|
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des domaines d'un utilisateur.
|
||||||
* Elle occasionnera peut-être des baisses de performance si un très grand nombre de domaines existe pour un utilisateur donné (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
* Elle occasionnera peut-être des baisses de performance si un très grand nombre de domaines existe pour un utilisateur donné (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
||||||
*/
|
*/
|
||||||
function modifEtatDomainesPostfix($pdo) {
|
function modifEtatDomainesPostfix($pdo,$retour_form) {
|
||||||
try {
|
try {
|
||||||
$compteModifs=0;
|
$compteModifs=0;
|
||||||
foreach ($_POST as $id_domaine => $etat_domaine) {
|
foreach ($retour_form as $id_domaine => $etat_domaine) {
|
||||||
$req='UPDATE postfix_domaines SET active=:etat_domaine WHERE id=:id_domaine AND defaut!=1';
|
$req='UPDATE postfix_domaines SET active=:etat_domaine WHERE id=:id_domaine AND defaut!=1';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
@@ -148,7 +148,7 @@ function modifEtatDomainesPostfix($pdo) {
|
|||||||
}
|
}
|
||||||
else {
|
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
|
// 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 de modification d'état pour les alias virtuels : ".$e->getMessage());
|
die ("Erreur de requête de modification d'état pour les domaines : ".$e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -156,12 +156,12 @@ function modifEtatDomainesPostfix($pdo) {
|
|||||||
/**
|
/**
|
||||||
* Fonction de suppression d'un domaine.
|
* Fonction de suppression d'un domaine.
|
||||||
*/
|
*/
|
||||||
function supprDomainesPostfix($pdo) {
|
function supprDomainesPostfix($pdo,$suppr_domaine) {
|
||||||
try {
|
try {
|
||||||
$req='DELETE FROM postfix_domaines WHERE id=:id_domaine AND defaut!=1';
|
$req='DELETE FROM postfix_domaines WHERE id=:id_domaine AND defaut!=1';
|
||||||
|
|
||||||
$sql=$pdo->prepare($req);
|
$sql=$pdo->prepare($req);
|
||||||
$sql->bindValue(':id_domaine',$_GET['supprDomaine']);
|
$sql->bindValue(':id_domaine',$suppr_domaine);
|
||||||
$sql->execute();
|
$sql->execute();
|
||||||
|
|
||||||
if($sql->rowCount() == 1){
|
if($sql->rowCount() == 1){
|
||||||
@@ -182,7 +182,7 @@ function supprDomainesPostfix($pdo) {
|
|||||||
}
|
}
|
||||||
else {
|
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
|
// 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 de suppression d'un alias virtuel : ".$e->getMessage());
|
die ("Erreur de requête de suppression d'un domaine : ".$e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,261 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de fonctions concernant les entrées de la liste noire des destinataires.
|
||||||
|
*/
|
||||||
|
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/connexion.php");
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction listant les entrées de la liste noire des destinataires.
|
||||||
|
*/
|
||||||
|
function listeEntreeListeNoireDstPostfix($pdo) {
|
||||||
|
try {
|
||||||
|
$req = 'SELECT * FROM postfix_liste_noire_destinataires';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->execute();
|
||||||
|
|
||||||
|
$liste_entree_liste_noire_dst = $sql->fetchAll();
|
||||||
|
return $liste_entree_liste_noire_dst;
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
die ("Erreur de requête de selection des entrées de liste noire destinataires pour \"$base\" : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction listant les entrées de la liste noire des expéditeurs.
|
||||||
|
*/
|
||||||
|
function listeEntreeListeNoireExpPostfix($pdo) {
|
||||||
|
try {
|
||||||
|
$req = 'SELECT * FROM postfix_liste_noire_expediteurs';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->execute();
|
||||||
|
|
||||||
|
$liste_entree_liste_noire_exp = $sql->fetchAll();
|
||||||
|
return $liste_entree_liste_noire_exp;
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
die ("Erreur de requête de selection des entrées de liste noire expéditeurs pour \"$base\" : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction d'ajout d'une entrée de liste noir destinataire.
|
||||||
|
*/
|
||||||
|
function ajoutEntreeListeNoireDstPostfix($pdo,$courriel_entree_liste_noire_dst,$action_entree_liste_noire_dst) {
|
||||||
|
try {
|
||||||
|
// Insertion de l'entrée de liste noire de destinataires renseignée par l'administrateur
|
||||||
|
$req='INSERT INTO postfix_liste_noire_destinataires (courriel,action,active) VALUES (:courriel,:action,1)';
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':courriel',substr(htmlspecialchars($courriel_entree_liste_noire_dst),0,49));
|
||||||
|
$sql->bindValue(':action',$action_entree_liste_noire_dst);
|
||||||
|
$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 "postfix_liste_noire_destinataires" est violée. L'adresse de destination envoyé via le formulaire par l'utilisateur a déjà été renseignée dans la base
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&erreur=12");
|
||||||
|
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=listes_noires&sousPage=destinataires&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'ajout de l'entrée de liste noire de destinataires : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction d'ajout d'une entrée de liste noir expéditeurs.
|
||||||
|
*/
|
||||||
|
function ajoutEntreeListeNoireExpPostfix($pdo,$courriel_entree_liste_noire_exp,$code_retour_entree_liste_noire_exp) {
|
||||||
|
try {
|
||||||
|
// Insertion de l'entrée de liste noire d'expéditeurs renseignée par l'administrateur
|
||||||
|
$req='INSERT INTO postfix_liste_noire_expediteurs (courriel,code_retour,message,active) VALUES (:courriel,:code_retour,"Votre message a été rejeté par le serveur car votre adresse est en liste noire.",1)';
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':courriel',substr(htmlspecialchars($courriel_entree_liste_noire_exp),0,49));
|
||||||
|
$sql->bindValue(':code_retour',$code_retour_entree_liste_noire_exp);
|
||||||
|
$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 "postfix_liste_noire_expediteurs" est violée. L'adresse de destination envoyé via le formulaire par l'utilisateur a déjà été renseignée dans la base
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&erreur=16");
|
||||||
|
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=listes_noires&sousPage=expediteurs&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'ajout de l'entrée de liste noire d'expéditeurs : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction d'activation/désactivation d'une entrée dans la liste noire des destinataires.
|
||||||
|
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des entrées de la liste noire des destinataires du serveur.
|
||||||
|
* Elle occasionnera peut-être des baisses de performance si un très grand d'entrées existent (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
||||||
|
*/
|
||||||
|
function modifEntreeListeNoireDstPostfix($pdo,$retour_form) {
|
||||||
|
try {
|
||||||
|
$compteModifs=0;
|
||||||
|
foreach ($retour_form as $id_entree_liste_noire_dst => $etat_entree_liste_noire_dst) {
|
||||||
|
$req='UPDATE postfix_liste_noire_destinataires SET active=:etat_entree_liste_noire_dst WHERE id=:id_entree_liste_noire_dst';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':etat_entree_liste_noire_dst',$etat_entree_liste_noire_dst);
|
||||||
|
$sql->bindValue(':id_entree_liste_noire_dst',$id_entree_liste_noire_dst);
|
||||||
|
$sql->execute();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
// Récupération du code de retour de la commande SQLite
|
||||||
|
$code_retour=$sql->errorInfo();
|
||||||
|
|
||||||
|
if ($code_retour[0]=="HY000") {
|
||||||
|
// Code de retour envoyé par le pilote PDO SQLite lorsque la base est accessible en lecture seule à www-data
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&erreur=10");
|
||||||
|
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 de modification d'état pour l'entrée de liste noire de destinataires : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction d'activation/désactivation d'une entrée dans la liste noire des expéditeurs.
|
||||||
|
* Suite à une soumission du formulaire dédié, cette fonction va traiter l'ensemble des entrées de la liste noire des expéditeurs du serveur.
|
||||||
|
* Elle occasionnera peut-être des baisses de performance si un très grand d'entrées existent (le traitement n'intervenant pas spécifiquement pour l'entrée modifiée).
|
||||||
|
*/
|
||||||
|
function modifEntreeListeNoireExpPostfix($pdo,$retour_form) {
|
||||||
|
try {
|
||||||
|
$compteModifs=0;
|
||||||
|
foreach ($retour_form as $id_entree_liste_noire_exp => $etat_entree_liste_noire_exp) {
|
||||||
|
$req='UPDATE postfix_liste_noire_expediteurs SET active=:etat_entree_liste_noire_exp WHERE id=:id_entree_liste_noire_exp';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':etat_entree_liste_noire_exp',$etat_entree_liste_noire_exp);
|
||||||
|
$sql->bindValue(':id_entree_liste_noire_exp',$id_entree_liste_noire_exp);
|
||||||
|
$sql->execute();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
// Récupération du code de retour de la commande SQLite
|
||||||
|
$code_retour=$sql->errorInfo();
|
||||||
|
|
||||||
|
if ($code_retour[0]=="HY000") {
|
||||||
|
// Code de retour envoyé par le pilote PDO SQLite lorsque la base est accessible en lecture seule à www-data
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&erreur=14");
|
||||||
|
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 de modification d'état pour l'entrée de liste noire d'expéditeurs : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction de suppression d'une entrée de liste noire de destinataires.
|
||||||
|
*/
|
||||||
|
function supprEntreeListeNoireDstPostfix($pdo) {
|
||||||
|
try {
|
||||||
|
$req='DELETE FROM postfix_liste_noire_destinataires WHERE id=:id_entree_liste_noire_dst';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':id_entree_liste_noire_dst',$_GET['supprEntreeListeNoireDst']);
|
||||||
|
$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]=="HY000") {
|
||||||
|
// Code de retour envoyé par le pilote PDO SQLite lorsque la base est accessible en lecture seule à www-data
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&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 de suppression d'une entrée de liste noire de destinataires : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction de suppression d'une entrée de liste noire d'expéditeurs.
|
||||||
|
*/
|
||||||
|
function supprEntreeListeNoireExpPostfix($pdo) {
|
||||||
|
try {
|
||||||
|
$req='DELETE FROM postfix_liste_noire_expediteurs WHERE id=:id_entree_liste_noire_exp';
|
||||||
|
|
||||||
|
$sql=$pdo->prepare($req);
|
||||||
|
$sql->bindValue(':id_entree_liste_noire_exp',$_GET['supprEntreeListeNoireExp']);
|
||||||
|
$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]=="HY000") {
|
||||||
|
// Code de retour envoyé par le pilote PDO SQLite lorsque la base est accessible en lecture seule à www-data
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&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 de suppression d'une entrée de liste noire d'expéditeurs : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fonction affichant les messages de retour des traitements site lorsqu'elle est interrogée.
|
||||||
|
*/
|
||||||
|
function retourneMessage($type_message,$num_message) {
|
||||||
|
$liste_messages = array (
|
||||||
|
"succes" => array(
|
||||||
|
1 => "<p class=\"message_succes\">Succès : alias virtuel créé avec succès.</p>",
|
||||||
|
2 => "<p class=\"message_succes\">Succès : alias virtuel modifiés avec succès.</p>",
|
||||||
|
3 => "<p class=\"message_succes\">Succès : alias virtuel supprimé avec succès.</p>",
|
||||||
|
4 => "<p class=\"message_succes\">Succès : utilisateur changé en ".$_SESSION['pseudo_utilisateur']." avec succès.</p>",
|
||||||
|
5 => "<p class=\"message_succes\">Succès : domaine créé avec succès.</p>",
|
||||||
|
6 => "<p class=\"message_succes\">Succès : domaine modifiés avec succès.</p>",
|
||||||
|
7 => "<p class=\"message_succes\">Succès : domaine supprimé avec succès.</p>",
|
||||||
|
8 => "<p class=\"message_succes\">Succès : domaine défini par défaut avec succès.</p>",
|
||||||
|
9 => "<p class=\"message_succes\">Succès : l'entrée de liste noire destiataires a été créée avec succès.</p>",
|
||||||
|
10 => "<p class=\"message_succes\">Succès : l'état de l'entrée de liste noire destiataires a été modifié avec succès.</p>",
|
||||||
|
11 => "<p class=\"message_succes\">Succès : l'entrée de liste noire destinataires a été supprimée avec succès.</p>",
|
||||||
|
12 => "<p class=\"message_succes\">Succès : l'entrée de liste noire expéditeurs a été créée avec succès.</p>",
|
||||||
|
13 => "<p class=\"message_succes\">Succès : l'état de l'entrée de liste noire expéditeurs a été modifié avec succès.</p>",
|
||||||
|
14 => "<p class=\"message_succes\">Succès : l'entrée de liste noire expéditeurs a été supprimée avec succès.</p>"),
|
||||||
|
"erreurs" => array(
|
||||||
|
|
||||||
|
1 => "<p class=\"message_erreur\">Erreur : aucun alias virtuel supprimé.</p>",
|
||||||
|
2 => "<p class=\"message_erreur\">Erreur : aucun alias virtuel créé car une donnée est erronée ou manquante.</p>",
|
||||||
|
3 => "<p class=\"message_erreur\">Erreur : L'alias virtuel est déjà existant.</p>",
|
||||||
|
4 => "<p class=\"message_erreur\">Erreur : Code d'erreur générique (HY000) signifiant probablement que la base SQLite n'est pas accessible en écriture. Il faut que la base et le répertoire <i>bdd</i> appartiennent à <i>www-data</i>.</p>",
|
||||||
|
5 => "<p class=\"message_erreur\">Erreur : aucun domaine supprimé.</p>",
|
||||||
|
6 => "<p class=\"message_erreur\">Erreur : aucun domaine créé car une donnée est erronée ou manquante.</p>",
|
||||||
|
7 => "<p class=\"message_erreur\">Erreur : le domaine est déjà existant.</p>",
|
||||||
|
8 => "<p class=\"message_erreur\">Erreur : le domaine par défaut n'a pas été modifié.</p>",
|
||||||
|
9 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car une donnée est erronée ou manquante.</p>",
|
||||||
|
10 => "<p class=\"message_erreur\">Erreur : l'état de l'entrée de liste noire destinataires n'a pas été modifié.</p>",
|
||||||
|
11 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire destinataires n'a pas été supprimée.</p>",
|
||||||
|
12 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire destinataires n'a pas été ajouté car elle est déjà existante.</p>",
|
||||||
|
13 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car une donnée est erronée ou manquante.</p>",
|
||||||
|
14 => "<p class=\"message_erreur\">Erreur : l'état de l'entrée de liste noire expéditeurs n'a pas été modifié.</p>",
|
||||||
|
15 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire expéditeurs n'a pas été supprimée.</p>",
|
||||||
|
16 => "<p class=\"message_erreur\">Erreur : l'entrée de liste noire expéditeurs n'a pas été ajouté car elle est déjà existante.</p>")
|
||||||
|
);
|
||||||
|
|
||||||
|
echo $liste_messages[$type_message][$num_message];
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -61,11 +61,10 @@ _HEREDOC_;
|
|||||||
echo "<span>$prefixe_utilisateur</span>";
|
echo "<span>$prefixe_utilisateur</span>";
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
<input type="text" id="nom_pour_filtre" name="nom_alias" placeholder="alias*" onkeyup="filtreValeurs();" required>
|
<input type="text" id="nom_pour_filtre" name="nom_alias_virtuel" placeholder="alias*" onkeyup="filtreValeurs();" required>
|
||||||
<span>@</span>
|
<span>@</span>
|
||||||
<select name="choix_domaine_alias">
|
<select name="choix_domaine_alias_virtuel">
|
||||||
<?php
|
<?php
|
||||||
var_dump($liste_domaines);
|
|
||||||
try {
|
try {
|
||||||
foreach ($liste_domaines as $domaine_bdd => $domaine) {
|
foreach ($liste_domaines as $domaine_bdd => $domaine) {
|
||||||
echo "<option value=\"".$domaine['domaine']."\">".$domaine['domaine']."</option>\n";
|
echo "<option value=\"".$domaine['domaine']."\">".$domaine['domaine']."</option>\n";
|
||||||
|
|||||||
@@ -46,6 +46,7 @@ $liste_domaines = listeDomainesPostfix($pdo);
|
|||||||
}
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
</select>
|
||||||
<!-- Définition du domaine sélectionné comme étant par défaut -->
|
<!-- Définition du domaine sélectionné comme étant par défaut -->
|
||||||
<input type="submit" value="Définir par défaut">
|
<input type="submit" value="Définir par défaut">
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@@ -4,15 +4,112 @@
|
|||||||
* Page de gestion importé par la page d'administration centrale permettant la gestion des listes noires.
|
* Page de gestion importé par la page d'administration centrale permettant la gestion des listes noires.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
session_start();
|
|
||||||
require_once($_SERVER["DOCUMENT_ROOT"]."/inclusions/entete.php");
|
if (testPrivileges()!="administrateur") {
|
||||||
require_once($_SERVER["DOCUMENT_ROOT"]."/inclusions/barre_entete.php");
|
header("Location: /pages/visiteurs/formulaire_accueil.php?erreur=2");
|
||||||
*/
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
$liste_entrees_liste_noires_dst=listeEntreeListeNoireDstPostfix($pdo);
|
||||||
|
$liste_entrees_liste_noires_exp=listeEntreeListeNoireExpPostfix($pdo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Permet d'inclure la page d'administration des listes noires déstinataires ou expéditeurs dédiée.
|
||||||
|
*/
|
||||||
|
|
||||||
|
echo <<<_heredoc_
|
||||||
|
<div>
|
||||||
|
<h1>Choisissez un type de liste noire à éditer :</h1>
|
||||||
|
<a href="/pages/gestion/administration.php?page=listes_noires&sousPage=destinataires">Destinataires</a>
|
||||||
|
<a href="/pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs">Expéditeurs</a>
|
||||||
|
_heredoc_;
|
||||||
|
|
||||||
|
if (isset($_GET['sousPage']) && !empty($_GET['sousPage'])) {
|
||||||
|
switch ($_GET['sousPage']) {
|
||||||
|
case 'destinataires':
|
||||||
|
echo <<<_HEREDOC_
|
||||||
|
<h1>Ajouter une entrée dans la liste noire des destinataires</h1>
|
||||||
|
<form action="/services/traitements/liste_noire_dst/ajoutEntreeListeNoireDst.php" method="post">
|
||||||
|
<input type="text" id="nom_pour_filtre" name="courriel_entree_liste_noire_dst" placeholder="utilisateur@domaine.tld*" onkeyup="filtreValeurs();" required>
|
||||||
|
<select name="choix_action_entree_liste_noire_dst">
|
||||||
|
<option value="REJECT">REJECT</option>
|
||||||
|
<option value="DEFER">DEFER</option>
|
||||||
|
</select>
|
||||||
|
<input type="submit" value="Ajouter">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<h1>Entrées de la liste noire des destinataires du serveur de messagerie</h1>
|
||||||
|
|
||||||
|
<form class="" action="/services/traitements/liste_noire_dst/editEntreeListeNoireDst.php" method="post">
|
||||||
|
<ul id="liste_pour_filtre">
|
||||||
|
_HEREDOC_;
|
||||||
|
/**
|
||||||
|
* Liste des entrées de la liste noire des destinataires.
|
||||||
|
*/
|
||||||
|
try {
|
||||||
|
foreach ($liste_entrees_liste_noires_dst as $liste_entrees_liste_noires_dst_cles => $liste_entrees_liste_noires_dst_valeurs) {
|
||||||
|
echo "<li><input type=\"radio\" name=\"".$liste_entrees_liste_noires_dst_valeurs['id']."\" value=\"1\"";
|
||||||
|
if (isset($liste_entrees_liste_noires_dst_valeurs['active']) && !empty($liste_entrees_liste_noires_dst_valeurs['active']) && $liste_entrees_liste_noires_dst_valeurs['active']=="1") echo " checked";
|
||||||
|
echo "><input type=\"radio\" name=\"".$liste_entrees_liste_noires_dst_valeurs['id']."\" value=\"0\"";
|
||||||
|
if (isset($liste_entrees_liste_noires_dst_valeurs['active']) && $liste_entrees_liste_noires_dst_valeurs['active']=="0") echo " checked";
|
||||||
|
echo "><table><tr><td><p>".$liste_entrees_liste_noires_dst_valeurs['courriel']."</p></td><td><p>".$liste_entrees_liste_noires_dst_valeurs['action']."</p></td></tr></table><label class=\"input-label-supprimer-valeur\" for=\"supprimer-valeur-".$liste_entrees_liste_noires_dst_valeurs['id']."\">Supprimer</label><input type=\"checkbox\" class=\"input-checkbox-supprimer-valeur visuellement-cache\" id=\"supprimer-valeur-".$liste_entrees_liste_noires_dst_valeurs['id']."\"><a class=\"confirmation-suppression\" href=\"/services/traitements/liste_noire_dst/supprEntreeListeNoireDst.php?supprEntreeListeNoireDst=".$liste_entrees_liste_noires_dst_valeurs['id']."\">Confirmer la suppression</a></li>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
die ("Erreur de requête de selection utilisateurs pour \"$base\" : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
echo <<<_HEREDOC_
|
||||||
|
</ul>
|
||||||
|
<input type="submit" value="Appliquer">
|
||||||
|
</form>
|
||||||
|
_HEREDOC_;
|
||||||
|
break;
|
||||||
|
case 'expediteurs':
|
||||||
|
echo <<<_HEREDOC_
|
||||||
|
<h1>Ajouter une entrée dans la liste noire des expéditeurs</h1>
|
||||||
|
<form action="/services/traitements/liste_noire_exp/ajoutEntreeListeNoireExp.php" method="post">
|
||||||
|
<input type="text" id="nom_pour_filtre" name="courriel_entree_liste_noire_exp" placeholder="utilisateur@domaine.tld*" onkeyup="filtreValeurs();" required>
|
||||||
|
<select name="choix_code_retour_entree_liste_noire_exp">
|
||||||
|
<option value="554">REJECT</option>
|
||||||
|
</select>
|
||||||
|
<input type="submit" value="Ajouter">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
<h1>Entrées de la liste noire des expéditeurs du serveur de messagerie</h1>
|
||||||
|
|
||||||
|
<form class="" action="/services/traitements/liste_noire_exp/editEntreeListeNoireExp.php" method="post">
|
||||||
|
<ul id="liste_pour_filtre">
|
||||||
|
_HEREDOC_;
|
||||||
|
/**
|
||||||
|
* Liste des entrées de la liste noire des destinataires.
|
||||||
|
*/
|
||||||
|
try {
|
||||||
|
foreach ($liste_entrees_liste_noires_exp as $liste_entrees_liste_noires_exp_cles => $liste_entrees_liste_noires_exp_valeurs) {
|
||||||
|
echo "<li><input type=\"radio\" name=\"".$liste_entrees_liste_noires_exp_valeurs['id']."\" value=\"1\"";
|
||||||
|
if (isset($liste_entrees_liste_noires_exp_valeurs['active']) && !empty($liste_entrees_liste_noires_exp_valeurs['active']) && $liste_entrees_liste_noires_exp_valeurs['active']=="1") echo " checked";
|
||||||
|
echo "><input type=\"radio\" name=\"".$liste_entrees_liste_noires_exp_valeurs['id']."\" value=\"0\"";
|
||||||
|
if (isset($liste_entrees_liste_noires_exp_valeurs['active']) && $liste_entrees_liste_noires_exp_valeurs['active']=="0") echo " checked";
|
||||||
|
echo "><table><tr><td><p>".$liste_entrees_liste_noires_exp_valeurs['courriel']."</p></td><td><p>".$liste_entrees_liste_noires_exp_valeurs['code_retour']."</p></td></tr></table><label class=\"input-label-supprimer-valeur\" for=\"supprimer-valeur-".$liste_entrees_liste_noires_exp_valeurs['id']."\">Supprimer</label><input type=\"checkbox\" class=\"input-checkbox-supprimer-valeur visuellement-cache\" id=\"supprimer-valeur-".$liste_entrees_liste_noires_exp_valeurs['id']."\"><a class=\"confirmation-suppression\" href=\"/services/traitements/liste_noire_exp/supprEntreeListeNoireExp.php?supprEntreeListeNoireExp=".$liste_entrees_liste_noires_exp_valeurs['id']."\">Confirmer la suppression</a></li>\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (\Exception $e) {
|
||||||
|
die ("Erreur de requête de selection utilisateurs pour \"$base\" : ".$e->getMessage());
|
||||||
|
}
|
||||||
|
echo <<<_HEREDOC_
|
||||||
|
</ul>
|
||||||
|
<input type="submit" value="Appliquer">
|
||||||
|
</form>
|
||||||
|
_HEREDOC_;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
echo " <h1>Cette page n'existe pas.</h1>";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
<script src="/fichiers/js/filtre.js"></script>
|
||||||
|
</div>
|
||||||
|
|
||||||
<?php //require_once($_SERVER["DOCUMENT_ROOT"]."/inclusions/pied.php"); ?>
|
|
||||||
@@ -11,8 +11,15 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges
|
|||||||
testPrivileges();
|
testPrivileges();
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
||||||
|
|
||||||
if (isset($_POST['nom_alias']) && isset($_POST['choix_domaine_alias']) && !empty($_POST['nom_alias']) && !empty($_POST['choix_domaine_alias'])) {
|
// Permet le contrôle du domaine renseigné par l'utilisateur
|
||||||
ajoutAliasVirtuelsPostfix($pdo);
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
||||||
|
$liste_domaines = listeDomainesPostfix($pdo);
|
||||||
|
|
||||||
|
var_dump($liste_domaines,$_POST);
|
||||||
|
//die();
|
||||||
|
|
||||||
|
if (isset($_POST['nom_alias_virtuel']) && isset($_POST['choix_domaine_alias_virtuel']) && !empty($_POST['nom_alias_virtuel']) && !empty($_POST['choix_domaine_alias_virtuel']) && in_array($_POST['choix_domaine_alias_virtuel'],array_column($liste_domaines,'domaine'))) {
|
||||||
|
ajoutAliasVirtuelsPostfix($pdo,$_POST['nom_alias_virtuel'],$_POST['choix_domaine_alias_virtuel']);
|
||||||
header ("Location: /pages/gestion/administration.php?page=alias&succes=1");
|
header ("Location: /pages/gestion/administration.php?page=alias&succes=1");
|
||||||
die();
|
die();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges
|
|||||||
testPrivileges();
|
testPrivileges();
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
||||||
|
|
||||||
modifEtatAliasVirtuelsPostfix($pdo);
|
modifEtatAliasVirtuelsPostfix($pdo,$_POST);
|
||||||
header ("Location: /pages/gestion/administration.php?page=alias&succes=2");
|
header ("Location: /pages/gestion/administration.php?page=alias&succes=2");
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@@ -9,7 +9,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges
|
|||||||
testPrivileges();
|
testPrivileges();
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/alias_virtuels.php");
|
||||||
|
|
||||||
if(isset($_GET['supprAliasVirtuel']) && !empty($_GET['supprAliasVirtuel']) && supprAliasVirtuelsPostfix($pdo)) {
|
if(isset($_GET['supprAliasVirtuel']) && !empty($_GET['supprAliasVirtuel']) && supprAliasVirtuelsPostfix($pdo,$_GET['supprAliasVirtuel'])) {
|
||||||
header ("Location: /pages/gestion/administration.php?page=alias&succes=3");
|
header ("Location: /pages/gestion/administration.php?page=alias&succes=3");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges
|
|||||||
testPrivileges();
|
testPrivileges();
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
||||||
|
|
||||||
modifEtatDomainesPostfix($pdo);
|
modifEtatDomainesPostfix($pdo,$_POST);
|
||||||
header ("Location: /pages/gestion/administration.php?page=domaines&succes=6");
|
header ("Location: /pages/gestion/administration.php?page=domaines&succes=6");
|
||||||
|
|
||||||
?>
|
?>
|
||||||
@@ -9,7 +9,7 @@ require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges
|
|||||||
testPrivileges();
|
testPrivileges();
|
||||||
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/domaines.php");
|
||||||
|
|
||||||
if(isset($_GET['supprDomaine']) && !empty($_GET['supprDomaine']) && supprDomainesPostfix($pdo)) {
|
if(isset($_GET['supprDomaine']) && !empty($_GET['supprDomaine']) && supprDomainesPostfix($pdo,$_GET['supprDomaine'])) {
|
||||||
header ("Location: /pages/gestion/administration.php?page=domaines&succes=7");
|
header ("Location: /pages/gestion/administration.php?page=domaines&succes=7");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|||||||
@@ -0,0 +1,31 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant l'ajout d'une entrée dans la liste noire des destinataires.
|
||||||
|
* C'est elle qui effectue les bons tests et appel la fonction adéquate.
|
||||||
|
* Elle est appelée par un formulaire de la page de gestion des listes noires elle-même appelée par la page d'administration centrale.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if (isset($_POST['courriel_entree_liste_noire_dst']) && isset($_POST['choix_action_entree_liste_noire_dst']) && !empty($_POST['courriel_entree_liste_noire_dst']) && !empty($_POST['choix_action_entree_liste_noire_dst'])) {
|
||||||
|
if ($_POST['choix_action_entree_liste_noire_dst']=="REJECT" || $_POST['choix_action_entree_liste_noire_dst']=="DEFER") {
|
||||||
|
ajoutEntreeListeNoireDstPostfix($pdo,$_POST['courriel_entree_liste_noire_dst'],$_POST['choix_action_entree_liste_noire_dst']);
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&succes=9");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&erreur=9");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&erreur=9");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant l'activation et la désactivation d'un ou plusieurs domaines.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if (isset($_POST) && !empty($_POST)) {
|
||||||
|
modifEntreeListeNoireDstPostfix($pdo,$_POST);
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&succes=10");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?listes_noires&sousPage=destinataires");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant la suppression d'un alias virtuel.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if(isset($_GET['supprEntreeListeNoireDst']) && !empty($_GET['supprEntreeListeNoireDst']) && supprEntreeListeNoireDstPostfix($pdo,$_GET['supprEntreeListeNoireDst'])) {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&succes=11");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=destinataires&erreur=11");
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant l'ajout d'une entrée dans la liste noire des expéditeurs.
|
||||||
|
* C'est elle qui effectue les bons tests et appel la fonction adéquate.
|
||||||
|
* Elle est appelée par un formulaire de la page de gestion des listes noires elle-même appelée par la page d'administration centrale.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if (isset($_POST['courriel_entree_liste_noire_exp']) && isset($_POST['choix_code_retour_entree_liste_noire_exp']) && !empty($_POST['courriel_entree_liste_noire_exp']) && !empty($_POST['choix_code_retour_entree_liste_noire_exp'])) {
|
||||||
|
if ($_POST['choix_code_retour_entree_liste_noire_exp']==554) {
|
||||||
|
ajoutEntreeListeNoireExpPostfix($pdo,$_POST['courriel_entree_liste_noire_exp'],$_POST['choix_code_retour_entree_liste_noire_exp']);
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&succes=12");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&erreur=13");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&erreur=13");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant l'activation et la désactivation d'un ou plusieurs domaines.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if (isset($_POST) && !empty($_POST)) {
|
||||||
|
modifEntreeListeNoireExpPostfix($pdo,$_POST);
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&succes=13");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?listes_noires&sousPage=expediteurs");
|
||||||
|
die();
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Page de traitement permettant la suppression d'un alias virtuel.
|
||||||
|
*/
|
||||||
|
|
||||||
|
session_start();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/sessions/privileges.php");
|
||||||
|
testPrivileges();
|
||||||
|
require_once ($_SERVER["DOCUMENT_ROOT"]."/services/fonctions/bdd/listes_noires.php");
|
||||||
|
|
||||||
|
if(isset($_GET['supprEntreeListeNoireExp']) && !empty($_GET['supprEntreeListeNoireExp']) && supprEntreeListeNoireExpPostfix($pdo,$_GET['supprEntreeListeNoireExp'])) {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&succes=14");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
header ("Location: /pages/gestion/administration.php?page=listes_noires&sousPage=expediteurs&erreur=15");
|
||||||
|
}
|
||||||
|
|
||||||
|
?>
|
||||||
Reference in New Issue
Block a user