Przeglądaj źródła

[backend] Utilisateurs : information sur les adresses emails en erreur lors d'un envoi d'email

dev
Guillaume Bourgeois 5 lat temu
rodzic
commit
8a4b013ecf
2 zmienionych plików z 17 dodań i 8 usunięć
  1. +14
    -3
      backend/controllers/UserController.php
  2. +3
    -5
      backend/models/MailForm.php

+ 14
- 3
backend/controllers/UserController.php Wyświetl plik

@@ -342,12 +342,23 @@ class UserController extends BackendController
$mailForm = new MailForm() ;
if ($mailForm->load(Yii::$app->request->post()) && $mailForm->validate()) {
$resultSendEmail = $mailForm->sendEmail($users) ;
if($resultSendEmail) {
$responseSendMail = $mailForm->sendEmail($users) ;
if($responseSendMail->success()) {
Yii::$app->getSession()->setFlash('success', 'Votre email a bien été envoyé.');
}
else {
Yii::$app->getSession()->setFlash('error', 'Un problème est survenu lors de l\'envoi de votre email.');
$bodyResponseSendMail = $responseSendMail->getBody() ;
$emailsErrorArray = [] ;
foreach($bodyResponseSendMail['Messages'] as $message) {
if($message['Status'] != 'success') {
$emailsErrorArray[] = $message['To']['Email'] ;
}
}
$messageError = 'Un problème est survenu lors de l\'envoi de votre email.' ;
if(count($emailsErrorArray) > 0) {
$messageError .= '<br />Problème détecté sur les adresses suivantes : '. implode(',', $emailsErrorArray) ;
}
Yii::$app->getSession()->setFlash('error', $messageError);
}
return $this->redirect(['mail','idPointSale' => $idPointSale]);

+ 3
- 5
backend/models/MailForm.php Wyświetl plik

@@ -188,13 +188,11 @@ Produits disponibles :
$success = $response->success() ;
if($success) {
return true ;
}
else {
if(!$success) {
Yii::error($response->getBody(), 'Mailjet');
return false ;
}
return $response ;
}

}

Ładowanie…
Anuluj
Zapisz