src/EventSubscriber/Pieza/PiezaCompradaEventSubscriber.php line 34
<?phpnamespace App\EventSubscriber\Pieza;use App\Event\Pieza\PiezaCompradaEvent;use App\Repository\PiezasCompradasRepository;use App\Service\Parametro\ParametroService;use Symfony\Component\EventDispatcher\EventSubscriberInterface;use Symfony\Component\Mailer\MailerInterface;use Symfony\Component\Mime\Email;class PiezaCompradaEventSubscriber implements EventSubscriberInterface{private MailerInterface $mailer;private PiezasCompradasRepository $piezasCompradasRepository;private ParametroService $parametroService;public function __construct(MailerInterface $mailer,PiezasCompradasRepository $piezasCompradasRepository,ParametroService $parametroService){$this->mailer = $mailer;$this->piezasCompradasRepository = $piezasCompradasRepository;$this->parametroService = $parametroService;}public static function getSubscribedEvents(){return [PiezaCompradaEvent::class => ['onPiezaComprada']];}public function onPiezaComprada(PiezaCompradaEvent $event):void {$sendEmail = $this->parametroService->getAvisoNuevaCompra();if($sendEmail) {$piezaComprada = $this->piezasCompradasRepository->findOneBy(['id' => $event->getPiezaCompradaId()]);$emailTo = $this->parametroService->getCorreoAvisoNuevaCompra();$email = (new Email())->from('avisos@cidon.es')->to($emailTo)//->cc('cc@example.com')//->bcc('bcc@example.com')//->replyTo('fabien@example.com')//->priority(Email::PRIORITY_HIGH)->subject('Nueva pieza comprada')->text('El usuario '. $piezaComprada->getUser()->nombreCompleto() .' (' . $piezaComprada->getUser()->getEmail() . ') ' .' ha comprado la pieza '. $piezaComprada->getPieza()->getNombre() .' por un importe de ' . $piezaComprada->getPrecio() . ' €.');// ->html('<p>Hola usuario <b>JULIO</b>!</p>');$this->mailer->send($email);}}}