$req = $pdo->query('SELECT * FROM postfix_alias_virtuels');
//$req = $pdo->query('SELECT * FROM postfix_alias_virtuels');
// Filtre des alias virtuels de l'utilisateur courant
/*$reqDomaineDefaut = $pdo->query('SELECT domaine FROM postfix_domaines WHERE defaut=1 LIMIT 1');
foreach ($reqDomaineDefaut as $cle => $domaineDefaut) {
$req = $pdo->query('SELECT * FROM postfix_alias_virtuels WHERE courriel='."\"$_SESSION[pseudo_utilisateur]".'@'."$domaineDefaut[domaine]\"");
}*/
$req = $pdo->query('SELECT * FROM postfix_alias_virtuels WHERE courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)');
$liste_alias_virtuels = array();
foreach ($req as $alias_virtuels_bdd => $alias_virtuels) {
//foreach ($_GET as $id_alias_virtuel => $etat_alias_virtuel) {
//echo "$id_alias_virtuel et $etat_alias_virtuel";
//echo 'UPDATE postfix_alias_virtuels SET active='."$etat_alias_virtuel".' WHERE id='."$id_alias_virtuel".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
//die();
echo "<pre>";
var_dump($_POST);
echo "</pre>";
//echo afficheDomaineDefautPostfix($pdo);
//die();
//$req = $pdo->query('DELETE FROM postfix_alias_virtuels WHERE id='."$_GET[supprAliasVirtuel]".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)');
$req='INSERT INTO postfix_alias_virtuels (courriel,destination,active) VALUES (:courriel,:alias_virtuel,1)';
die ("Erreur de requête d'ajout d'alias virtuel : ".$e->getMessage());
}
}
//Tester les injections SQL
function modifEtatAliasVirtuelsPostfix($pdo) {
try {
$compteModifs=0;
foreach ($_POST as $id_alias_virtuel => $etat_alias_virtuel) {
//echo "$id_alias_virtuel et $etat_alias_virtuel";
//echo 'UPDATE postfix_alias_virtuels SET active='."$etat_alias_virtuel".' WHERE id='."$id_alias_virtuel".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
//die();
//$req = $pdo->query('UPDATE postfix_alias_virtuels SET active='."$etat_alias_virtuel".' WHERE id='."$id_alias_virtuel".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)');
$req='UPDATE postfix_alias_virtuels SET active=:etat_alias_virtuel WHERE id=:id_alias_virtuel AND courriel=:pseudo_utilisateur||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
die ("Erreur de requête de modification d'état pour les alias virtuels : ".$e->getMessage());
}
}
function supprAliasVirtuelsPostfix($pdo) {
try {
//foreach ($_GET as $id_alias_virtuel => $etat_alias_virtuel) {
//echo "$id_alias_virtuel et $etat_alias_virtuel";
//echo 'UPDATE postfix_alias_virtuels SET active='."$etat_alias_virtuel".' WHERE id='."$id_alias_virtuel".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
//die();
echo $_GET['supprAliasVirtuel'];
//$req = $pdo->query('DELETE FROM postfix_alias_virtuels WHERE id='."$_GET[supprAliasVirtuel]".' AND courriel='."\"$_SESSION[pseudo_utilisateur]".'@"'.'||(SELECT domaine FROM postfix_domaines WHERE defaut=1)');
$req='DELETE FROM postfix_alias_virtuels WHERE id=:id_alias_virtuel AND courriel=:pseudo_utilisateur||(SELECT domaine FROM postfix_domaines WHERE defaut=1)';
// Faire un filtre des alias (depuis la requête SQL) pour n'afficher que ceux de l'adresse de l'utilisateur connecté. Il faudra donc concaténer son identifiant_utilisateur avec le domaine par défaut de la table qu'utilisera Postfix (ça ne fonctionne pas actuellement) pour les utilisateurs locaux via Sqlite
// Réexploiter la fonction du filtre pour s'assurer que la supression d'un alias est légitime
/**
* Ajout d'un alias virtuel.
*/
try {
foreach ($liste_alias_virtuels as $alias_virtuels_bdd => $alias_virtuels) {
echo "<li><inputtype=\"checkbox\";";
if (isset($alias_virtuels['active']) && !empty($alias_virtuels['active']) && $alias_virtuels['active']==1) echo "checked";