<?php
namespace App\MailBundle\EventListener\ValidationRequest;
use App\Entity\Staff\Staff;
use App\Entity\ValidationRequest;
use App\Event\ValidationRequest\ValidationRequestAskUnlockEvent;
use App\MailBundle\Entity\Mail;
use App\MailBundle\EventListener\MailListener;
use App\MailBundle\Exception\MissingTemplateException;
use App\MailBundle\Service\MailSender;
use JetBrains\PhpStorm\NoReturn;
use Symfony\Component\Mailer\Exception\TransportExceptionInterface;
use Symfony\Contracts\EventDispatcher\Event;
use Twig\Error\LoaderError;
use Twig\Error\RuntimeError;
use Twig\Error\SyntaxError;
class ValidationRequestAskUnlockEventListener extends ValidationRequestEventListener
{
/**
* @throws SyntaxError
* @throws MissingTemplateException
* @throws TransportExceptionInterface
* @throws RuntimeError
* @throws LoaderError
*/
#[NoReturn]
public function onRequestUnlockValidationRequestEvent(ValidationRequestAskUnlockEvent $event)
{
$validationRequest = $event?->getValidationRequest();
$from = $validationRequest?->getUnlockRequestedBy();
$this->sendMail($validationRequest, $from, Mail::REQUEST_UNLOCK_TEMPLATE);
}
}