From 691b684fc16d6972a6a1ee7d6da86db427bad9e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Gangloff?= Date: Mon, 29 Jul 2024 16:54:31 +0200 Subject: [PATCH] feat: send email when domain ordered --- .../ProcessDomainTriggerHandler.php | 23 ++++++- .../emails/success/domain_ordered.html.twig | 66 +++++++++++++++++++ .../{ => success}/domain_updated.html.twig | 0 3 files changed, 88 insertions(+), 1 deletion(-) create mode 100644 templates/emails/success/domain_ordered.html.twig rename templates/emails/{ => success}/domain_updated.html.twig (100%) diff --git a/src/MessageHandler/ProcessDomainTriggerHandler.php b/src/MessageHandler/ProcessDomainTriggerHandler.php index e9e7b7f..40e191d 100644 --- a/src/MessageHandler/ProcessDomainTriggerHandler.php +++ b/src/MessageHandler/ProcessDomainTriggerHandler.php @@ -5,6 +5,7 @@ namespace App\MessageHandler; use App\Config\Connector\OvhConnector; use App\Config\ConnectorProvider; use App\Config\TriggerAction; +use App\Entity\Connector; use App\Entity\Domain; use App\Entity\DomainEvent; use App\Entity\User; @@ -68,6 +69,7 @@ final readonly class ProcessDomainTriggerHandler true, $isDebug ); + $this->sendEmailDomainOrdered($domain, $connector, $watchList->getUser()); } else throw new Exception("Unknown provider"); } @@ -81,6 +83,25 @@ final readonly class ProcessDomainTriggerHandler } } + /** + * @throws TransportExceptionInterface + */ + private function sendEmailDomainOrdered(Domain $domain, Connector $connector, User $user): void + { + $email = (new TemplatedEmail()) + ->from($this->mailerSenderEmail) + ->to($user->getEmail()) + ->priority(Email::PRIORITY_HIGHEST) + ->subject('A domain name has been ordered') + ->htmlTemplate('emails/success/domain_ordered.html.twig') + ->locale('en') + ->context([ + "domain" => $domain, + "provider" => $connector->getProvider()->value + ]); + + $this->mailer->send($email); + } /** * @throws TransportExceptionInterface @@ -92,7 +113,7 @@ final readonly class ProcessDomainTriggerHandler ->to($user->getEmail()) ->priority(Email::PRIORITY_HIGHEST) ->subject('A domain name has been changed') - ->htmlTemplate('emails/domain_updated.html.twig') + ->htmlTemplate('emails/success/domain_updated.html.twig') ->locale('en') ->context([ "event" => $domainEvent diff --git a/templates/emails/success/domain_ordered.html.twig b/templates/emails/success/domain_ordered.html.twig new file mode 100644 index 0000000..e9e5c02 --- /dev/null +++ b/templates/emails/success/domain_ordered.html.twig @@ -0,0 +1,66 @@ + + + + + Domain Watchdog - Domain Ordered + + +
+
+

Domain Watchdog - Domain Ordered

+
+
+

Hello,

+

We are pleased to inform you that a domain name present in your Watchlist has been ordered using the + connector you have chosen.

+

Domain name: {{ domain.ldhName }}

+

Connector provider : {{ provider }}

+
+

Thank you for your understanding,

+

Sincerely,

+

Domain Watchdog

+
+ +
+ + \ No newline at end of file diff --git a/templates/emails/domain_updated.html.twig b/templates/emails/success/domain_updated.html.twig similarity index 100% rename from templates/emails/domain_updated.html.twig rename to templates/emails/success/domain_updated.html.twig