Переглянути джерело

Amélioration feuille prépa

feature/export_comptable
Fab 4 роки тому
джерело
коміт
af2fa063f7
2 змінених файлів з 90 додано та 0 видалено
  1. +87
    -0
      ShopBundle/Listener/MailLoggerListener.php
  2. +3
    -0
      ShopBundle/Services/Utils.php

+ 87
- 0
ShopBundle/Listener/MailLoggerListener.php Переглянути файл

@@ -0,0 +1,87 @@
<?php

namespace Lc\ShopBundle\Services;

use Psr\Log\LoggerInterface;
use Psr\Log\LogLevel;
use Swift_Events_SendEvent;
use Swift_Events_SendListener;

class MailLoggerUtil implements Swift_Events_SendListener
{
protected $logger;

/**
* MailerLoggerUtil constructor.
*
* @param LoggerInterface $logger
*/
public function __construct(LoggerInterface $logger)
{
$this->logger = $logger;
}

/**
* @param Swift_Events_SendEvent $evt
*/
public function beforeSendPerformed(Swift_Events_SendEvent $evt)
: void
{
}

/**
* @param Swift_Events_SendEvent $evt
*/
public function sendPerformed(Swift_Events_SendEvent $evt)
: void
{

dump('ncnnc');
$level = $this->getLogLevel($evt);
$message = $evt->getMessage();

$this->logger->log(
$level,
$message->getSubject().' - '.$message->getId(),
[
'result' => $evt->getResult(),
'subject' => $message->getSubject(),
'to' => $message->getTo(),
'cc' => $message->getCc(),
'bcc' => $message->getBcc(),
]
);
}

/**
* @param Swift_Events_SendEvent $evt
*
* @return string
*/
private function getLogLevel(Swift_Events_SendEvent $evt)
: string
{
switch ($evt->getResult()) {
// Sending has yet to occur
case Swift_Events_SendEvent::RESULT_PENDING:
return LogLevel::DEBUG;

// Email is spooled, ready to be sent
case Swift_Events_SendEvent::RESULT_SPOOLED:
return LogLevel::DEBUG;

// Sending failed
default:
case Swift_Events_SendEvent::RESULT_FAILED:
return LogLevel::CRITICAL;

// Sending worked, but there were some failures
case Swift_Events_SendEvent::RESULT_TENTATIVE:
return LogLevel::ERROR;

// Sending was successful
case Swift_Events_SendEvent::RESULT_SUCCESS:
return LogLevel::INFO;
}
}
}

+ 3
- 0
ShopBundle/Services/Utils.php Переглянути файл

@@ -360,6 +360,9 @@ class Utils
return $str;
}

public function csvEscape($str){
return str_replace(array("\r", "\n"), ' ', $str);
}
public function getRemindersByUser($user)
{
$reminderRepo = $this->em->getRepository(ReminderInterface::class);

Завантаження…
Відмінити
Зберегти