src/EventSubscriber/Enrollment/EnrollmentSubscriber.php line 36

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber\Enrollment;
  3. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  4. use App\Event\Enrollment\EnrollmentCreatedEvent;
  5. use App\Service\Enrollment\EnrollmentRFPSender;
  6. class EnrollmentSubscriber implements EventSubscriberInterface
  7. {
  8.     private $enrollmentRFPSender;
  9.     
  10.     public function __construct(EnrollmentRFPSender $enrollmentRFPSender)
  11.     {
  12.         $this->enrollmentRFPSender $enrollmentRFPSender;
  13.     }
  14.     
  15.     
  16.     public static function getSubscribedEvents()
  17.     {
  18.        // return the subscribed events, their methods and priorities
  19.         return [
  20.             EnrollmentCreatedEvent::NAME => [
  21.                 'sendEnrollmentEmail'
  22.             ]
  23.         ];
  24.     }
  25.     
  26.     
  27.     /**
  28.      * 
  29.      * Send RequestForPayment after new enrollment is created if enrollment is regular enrollment
  30.      * 
  31.      * @param EnrollmentCreatedEvent $enrollmentCreatedEvent
  32.      */
  33.     public function sendEnrollmentEmail(EnrollmentCreatedEvent $enrollmentCreatedEvent)
  34.     {
  35.         $enrollment $enrollmentCreatedEvent->getEnrollment();
  36.         if ($enrollment->isRegular())
  37.         {
  38.             $this->enrollmentRFPSender->sendRequestForPayment($enrollment);
  39.         }        
  40.     }
  41.     
  42. }