mirror of
https://github.com/maelgangloff/domain-watchdog.git
synced 2025-12-17 09:45:29 +00:00
feat: send email when domain ordered
This commit is contained in:
parent
7e2da3eb0b
commit
691b684fc1
@ -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
|
||||
|
||||
66
templates/emails/success/domain_ordered.html.twig
Normal file
66
templates/emails/success/domain_ordered.html.twig
Normal file
@ -0,0 +1,66 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<style>
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
line-height: 1.6;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
.container {
|
||||
max-width: 600px;
|
||||
margin: 0 auto;
|
||||
padding: 20px;
|
||||
border: 1px solid #ddd;
|
||||
border-radius: 5px;
|
||||
background-color: #f9f9f9;
|
||||
}
|
||||
|
||||
.header {
|
||||
text-align: center;
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.header h1 {
|
||||
font-size: 24px;
|
||||
color: #0056b3;
|
||||
}
|
||||
|
||||
.content {
|
||||
margin-bottom: 20px;
|
||||
}
|
||||
|
||||
.content p {
|
||||
margin: 0 0 10px;
|
||||
}
|
||||
|
||||
.footer {
|
||||
text-align: center;
|
||||
color: #777;
|
||||
}
|
||||
</style>
|
||||
<title>Domain Watchdog - Domain Ordered</title>
|
||||
</head>
|
||||
<body>
|
||||
<div class="container">
|
||||
<div class="header">
|
||||
<h1>Domain Watchdog - Domain Ordered</h1>
|
||||
</div>
|
||||
<div class="content">
|
||||
<p>Hello,</p>
|
||||
<p>We are pleased to inform you that a domain name present in your Watchlist has been ordered using the
|
||||
connector you have chosen.</p>
|
||||
<p><strong>Domain name:</strong> {{ domain.ldhName }}</p>
|
||||
<p><strong>Connector provider :</strong> {{ provider }}</p>
|
||||
<br/>
|
||||
<p>Thank you for your understanding,</p>
|
||||
<p>Sincerely,</p>
|
||||
<p>Domain Watchdog</p>
|
||||
</div>
|
||||
<div class="footer">
|
||||
<p>© Domain Watchdog</p>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
x
Reference in New Issue
Block a user