Commit bd56efac authored by Matthieu FAURE's avatar Matthieu FAURE
Browse files

Merge branch...

Merge branch '50-resoudre-le-probleme-d-envoi-de-mail-lorsque-formulaire-d-adhesion-valide' into 'master'

Resolve "résoudre le problème d'envoi de mail lorsque formulaire d'adhésion validé"

Closes #50

See merge request !32
parents db38d39f 52449348
......@@ -6,6 +6,8 @@
*/
//variables pour le mail
define("SUBJECT_ADULLACT", "Nouvelle demande de renouvellement d'adhésion");
define("SUBJECT_ERROR_MAIL", "Une erreur est survenue lors d'un envoi de mail récupéré sur le formulaire d'adhésion.");
define("MESSAGE_ERROR_MAIL", "Lorsqu'un utilisateur a validé le formulaire d'adhésion, le mail de confirmation n'a pas été envoyé à cet utilisateur. Une erreur est survenue, veuillez consulter les logs pour en savoir plus.");
define("SUBJECT_USER", "Confirmation de demande de renouvellement d'adhésion");
$bonjourUser = "Bonjour,";
......@@ -142,7 +144,9 @@ function sendAdhesionMail($tab, $trash, $replacements)
}
}
$emailUser = trim($tab["mailUser"]);
$header = "Content-type: text/html; charset=utf-8 \r\n";
$header = "Content-type: text/html; charset=utf-8\r\n";
$header .= "Content-Transfer-Encoding: 8bit\r\n";
$logMessage = "\n";
$messageAdullact = "Nouvelle requête pour le formulaire d'adhésion : <br><table>";
......@@ -154,11 +158,26 @@ function sendAdhesionMail($tab, $trash, $replacements)
$logMessage = $logMessage . $key . " : " . $value . "\n";
}
if (mail($emailUser, SUBJECT_USER, TEXT_MAIL_USER, $header)) {
mail(MAIL_CIBLE_ADULLACT, SUBJECT_ADULLACT, $messageAdullact, $header);
writeInLog("Nouvelle demande", $logMessage);
//on tente d'envoyer le mail à l'utilisateur
if (wp_mail($emailUser, html_entity_decode(SUBJECT_USER, ENT_QUOTES, 'UTF-8'), TEXT_MAIL_USER, $header)) {
writeInLog("Nouvelle demande", $logMessage, MEMBERSHIP_LOGS_DIRECTORY);
//si ça fonctionne, on envoie un mail positif à l'Adullact.
if (!wp_mail(MAIL_CIBLE_ADULLACT, html_entity_decode(SUBJECT_ADULLACT, ENT_QUOTES, 'UTF-8'), $messageAdullact, $header)) {
//on envoie le mail à l'adullact mais si ça échoue, on écrit dans les logs.
$entire_error = "Adresse mail : " . MAIL_CIBLE_ADULLACT . "\n";
$entire_error .= "Headers du mail : " . $header . "\n";
$entire_error .= "Sujet mail : " . SUBJECT_ADULLACT . "\n";
$entire_error .= "Message mail : " . $messageAdullact . "\n";
writeInLog("Erreur lors de l'envoi de mail à l'Adullact", $entire_error, MEMBERSHIP_LOGS_DIRECTORY);
}
} else {
writeInLog("Erreur de l'envoi mail.", "Header : \n" . $header . "\nInfos :" . $logMessage);
//l'envoi à l'utilisateur n'a visiblement pas fonctionné. On tente donc d'envoyer un mail négatif à l'Adullact et on l'écrit dans les logs.
if (!wp_mail(MAIL_CIBLE_ADULLACT, html_entity_decode(SUBJECT_ERROR_MAIL, ENT_QUOTES, 'UTF-8'), MESSAGE_ERROR_MAIL, $header)) {
//si l'envoi de mail à l'Adullact ne fonctionne pas non plus, on signale les deux erreurs.
writeInLog("Erreur lors de l'envoi de mail à" . $emailUser, "Header : \n" . $header . "\nSujet : " . SUBJECT_USER . "\nInfos :" . $logMessage, MEMBERSHIP_LOGS_DIRECTORY);
writeInLog("Erreur lors de l'envoi de mail à L'Adullact", "Header : \n" . $header . "\nSujet : " . SUBJECT_ERROR_MAIL . "\nInfos :" . MESSAGE_ERROR_MAIL, MEMBERSHIP_LOGS_DIRECTORY);
}
}
}
......@@ -166,15 +185,15 @@ function sendAdhesionMail($tab, $trash, $replacements)
* Utile pour écrire un quelconque message dans les logs
* @param string $intitule
* @param string $text
* @param string $filePath : chemin d'accès au fichier de log
*/
function writeInLog($intitule, $text)
function writeInLog($intitule, $text, $filePath)
{
//fonction qui écrit dans les logs.
date_default_timezone_set('Europe/Paris');
$date = date("d-m-Y");
$hour = date("H:i:s");
$filePath = MEMBERSHIP_LOGS_DIRECTORY;
$beforeMessage = "\n--------------\nLe " . $date . ", à " . $hour . ", \n" . $intitule . " : \n";
$finalMessage = $beforeMessage . $text;
$fichier = fopen($filePath, "a");
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment