mirror of
https://grond.iut-fbleau.fr/stiti/SAE_2.02
synced 2024-11-12 22:01:41 +01:00
Commit de Louay : Corrections de bug + Amélioration des mails
This commit is contained in:
parent
95635ed15b
commit
d04d01aecc
@ -13,7 +13,7 @@ class Contact extends CI_Controller {
|
||||
|
||||
public function __construct() {
|
||||
parent::__construct();
|
||||
// Chargez le modèle si nécessaire
|
||||
// Chargez le modèle si nécessaire (pour le moment pas encore besoin)
|
||||
}
|
||||
|
||||
public function index() {
|
||||
@ -22,6 +22,7 @@ class Contact extends CI_Controller {
|
||||
$this->load->view('layout/footer_dark');
|
||||
}
|
||||
|
||||
// Permet d'envoyer un mail au Support de Onzeur quand le client écrit un mail depuis l'accueil
|
||||
public function send_message() {
|
||||
if ($this->input->post()) {
|
||||
$name = $this->input->post('name');
|
||||
@ -43,8 +44,71 @@ class Contact extends CI_Controller {
|
||||
|
||||
$mail->isHTML(true);
|
||||
$mail->Subject = 'Formulaire de contact Onzeur - ' . $name;
|
||||
$mail->Body = $message;
|
||||
|
||||
$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>Nouveau message de contact</h1>
|
||||
<p><strong>Nom:</strong> ' . $name . '</p>
|
||||
<p><strong>Email:</strong> ' . $email . '</p>
|
||||
<p><strong>Message:</strong></p>
|
||||
<p>' . nl2br($message) . '</p>
|
||||
</div>
|
||||
<div class="footer">
|
||||
© ' . date("Y") . ' Onzeur. Tous droits réservés.
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>';
|
||||
|
||||
$mail->send();
|
||||
$this->load->view('layout/header_dark');
|
||||
$this->load->view('confirmation_mail.php');
|
||||
@ -59,6 +123,7 @@ class Contact extends CI_Controller {
|
||||
}
|
||||
}
|
||||
|
||||
// Permet d'envoyer un mail au Support de Onzeur quand le client écrit un mail depuis la page de contacte (donc avec plus d'infos)
|
||||
public function send_detailed_message() {
|
||||
if ($this->input->post()) {
|
||||
$name = $this->input->post('name');
|
||||
@ -81,7 +146,70 @@ class Contact extends CI_Controller {
|
||||
|
||||
$mail->isHTML(true);
|
||||
$mail->Subject = 'Formulaire de contact Onzeur - ' . $name;
|
||||
$mail->Body = $message;
|
||||
$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>Nouveau message de contact</h1>
|
||||
<p><strong>Nom:</strong> ' . $name . '</p>
|
||||
<p><strong>Email:</strong> ' . $email . '</p>
|
||||
<p><strong>Message:</strong></p>
|
||||
<p>' . nl2br($message) . '</p>
|
||||
</div>
|
||||
<div class="footer">
|
||||
© ' . date("Y") . ' Onzeur. Tous droits réservés.
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>';
|
||||
|
||||
// Gérer la pièce jointe
|
||||
if (!empty($attachment['tmp_name'])) {
|
||||
|
@ -13,7 +13,6 @@ class Search extends CI_Controller {
|
||||
public function index(){
|
||||
// Récupérer la requête de recherche depuis la barre de recherche
|
||||
$query = $this->input->get('query');
|
||||
include 'temporaire.php';
|
||||
|
||||
// Vérifier que la requête de recherche n'est pas vide
|
||||
if (empty($query)) {
|
||||
|
@ -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">
|
||||
© '.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">
|
||||
© '.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
|
||||
|
@ -1,7 +0,0 @@
|
||||
<?php
|
||||
|
||||
// ####### Temporaire ########
|
||||
|
||||
$logged = false;
|
||||
|
||||
?>
|
37
CodeIgniter-3.1.13/assets/css/email.css
Normal file
37
CodeIgniter-3.1.13/assets/css/email.css
Normal file
@ -0,0 +1,37 @@
|
||||
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;
|
||||
}
|
Loading…
Reference in New Issue
Block a user