Commit de Louay : Corrections de bug + Amélioration des mails

This commit is contained in:
stiti
2024-05-26 15:44:36 +02:00
parent 95635ed15b
commit d04d01aecc
5 changed files with 370 additions and 12 deletions

View File

@@ -176,6 +176,18 @@ class Utilisateur extends CI_Controller {
);
if ($this->Utilisateur_model->insert_avis($data)) {
// Envoyer un email en fonction de la note
$notation = intval($this->input->post('notation'));
if ($notation >= 1 && $notation <= 3) {
// Envoyer un email d'excuse
$user = $this->Utilisateur_model->get_user_by_id($this->session->userdata('user_id'));
$this->send_excuse_email($user->email, $user->prenom, $user->nom);
} elseif ($notation >= 4 && $notation <= 5) {
// Envoyer un email de remerciement
$user = $this->Utilisateur_model->get_user_by_id($this->session->userdata('user_id'));
$this->send_thank_you_email($user->email, $user->prenom, $user->nom);
}
$this->session->set_flashdata('success', 'Avis ajouté avec succès.');
} else {
$this->session->set_flashdata('error', 'Une erreur est survenue. Veuillez réessayer.');
@@ -184,6 +196,195 @@ class Utilisateur extends CI_Controller {
redirect('/');
}
}
private function send_excuse_email($to_email, $prenom, $nom) {
$mail = new PHPMailer(true);
try {
// Configuration du serveur SMTP
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'onzeur.contact@gmail.com';
$mail->Password = 'ofoi hjpo isxf azdk';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Destinataires
$mail->setFrom('onzeur.contact@gmail.com', 'Support Onzeur');
$mail->addAddress($to_email);
// Contenu de l'email
$mail->isHTML(true);
$mail->Subject = 'Retours sur votre mauvaise experience sur Onzeur.';
$mail_body = '
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 0;
}
.container {
width: 80%;
margin: 0 auto;
background-color: #fff;
padding: 20px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.header {
text-align: center;
padding: 20px;
}
.header img {
max-width: 150px;
}
.content {
margin-top: 20px;
}
.content h1 {
color: #333;
}
.content p {
font-size: 16px;
line-height: 1.6;
color: #666;
}
.footer {
margin-top: 20px;
text-align: center;
font-size: 14px;
color: #999;
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<img src="'.base_url('assets/img/Logo_ONZEUR_LIGHT.png').'" alt="Logo Onzeur">
</div>
<div class="content">
<h1>Désolé, '.$prenom.' '.$nom.' !</h1>
<p>Nous sommes désolés de constater que votre expérience sur Onzeur n\'a pas été à la hauteur de vos attentes.</p>
<p>Nous prenons en compte vos retours et nous nous efforçons constamment d\'améliorer notre plateforme pour mieux vous servir.</p>
<p>Nous espérons avoir l\'occasion de vous satisfaire pleinement à l\'avenir.</p>
<p>Cordialement,<br>L\'équipe Onzeur</p>
</div>
<div class="footer">
&copy; '.date("Y").' Onzeur. Tous droits réservés.
</div>
</div>
</body>
</html>';
$mail->Body = $mail_body;
$mail->send();
} catch (Exception $e) {
log_message('error', 'Erreur lors de l\'envoi de l\'email: ' . $mail->ErrorInfo);
}
}
private function send_thank_you_email($to_email, $prenom, $nom) {
$mail = new PHPMailer(true);
try {
// Configuration du serveur SMTP
$mail->isSMTP();
$mail->Host = 'smtp.gmail.com';
$mail->SMTPAuth = true;
$mail->Username = 'onzeur.contact@gmail.com';
$mail->Password = 'ofoi hjpo isxf azdk';
$mail->SMTPSecure = 'tls';
$mail->Port = 587;
// Destinataires
$mail->setFrom('onzeur.contact@gmail.com', 'Support Onzeur');
$mail->addAddress($to_email);
// Contenu de l'email
$mail->isHTML(true);
$mail->Subject = 'Merci de votre avis sur Onzeur !';
$mail_body = '
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
body {
font-family: Arial, sans-serif;
background-color: #f4f4f4;
margin: 0;
padding: 0;
}
.container {
width: 80%;
margin: 0 auto;
background-color: #fff;
padding: 20px;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
.header {
text-align: center;
padding: 20px;
}
.header img {
max-width: 150px;
}
.content {
margin-top: 20px;
}
.content h1 {
color: #333;
}
.content p {
font-size: 16px;
line-height: 1.6;
color: #666;
}
.footer {
margin-top: 20px;
text-align: center;
font-size: 14px;
color: #999;
}
</style>
</head>
<body>
<div class="container">
<div class="header">
<img src="'.base_url('assets/img/Logo_ONZEUR_LIGHT.png').'" alt="Logo Onzeur">
</div>
<div class="content">
<h1>Merci, '.$prenom.' '.$nom.' !</h1>
<p>Nous vous remercions d\'avoir pris le temps de laisser votre avis sur Onzeur. Votre contribution est très précieuse pour nous.</p>
<p>Nous prenons en compte vos retours et nous nous efforçons constamment d\'améliorer notre plateforme pour mieux vous servir.</p>
<p>N\'hésitez pas à continuer à partager vos impressions avec nous.</p>
<p>Cordialement,<br>L\'équipe Onzeur</p>
</div>
<div class="footer">
&copy; '.date("Y").' Onzeur. Tous droits réservés.
</div>
</div>
</body>
</html>';
$mail->Body = $mail_body;
$mail->send();
} catch (Exception $e) {
log_message('error', 'Erreur lors de l\'envoi de l\'email: ' . $mail->ErrorInfo);
}
}
public function connexion(){
// Définir les règles de validation