src/EventListener/SMSMessengerListener.php line 23

Open in your IDE?
  1. <?php 
  2. namespace App\EventListener;
  3. use App\Event\OrderEvent;
  4. use App\Event\OrderVerifiedEvent;
  5. use App\Event\SendOrderPincodeEvent;
  6. use Symfony\Component\HttpFoundation\RequestStack;
  7. use Boab\CmsBundle\Sms\SMSGatewayInterface;
  8. use Boab\EcommerceBundle\Entity\OrderInterface;
  9. class SMSMessengerListener
  10. {
  11.     private $smsGateway;
  12.     private $requestStack;
  13.     public function __construct(SMSGatewayInterface $smsGatewayRequestStack  $requestStack)
  14.     {
  15.         $this->smsGateway $smsGateway;
  16.         $this->requestStack $requestStack;
  17.     }
  18.     public function onOrderCreated(OrderEvent $event)
  19.     {
  20.         $order $event->getOrder();
  21.         $smsMessenger $this->smsGateway->create('mnotify');
  22.         $smsResponse $smsMessenger->send($order->getContactNumber(), sprintf('Your OrderId is %s '$order->getOrderId()));
  23.     }    
  24.     public function onSendPincode(SendOrderPincodeEvent $event)
  25.     {
  26.         $order $event->getOrder();
  27.         $pincode $order->getPincode();
  28.         $smsMessenger $this->smsGateway->create('mnotify');
  29.         $smsResponse $smsMessenger->send($order->getContactNumber(), sprintf('Your PIN is %s '$pincode->getPin()));
  30.     }
  31.     public function onOrderVerified(OrderVerifiedEvent $event)
  32.     {
  33.         $order $event->getOrder();
  34.         if($order->getStatus() === OrderInterface::PENDING){
  35.             return;
  36.         }        
  37.         $pincode $order->getPincode();
  38.         $smsMessenger $this->smsGateway->create('dtech');
  39.         $smsResponse $smsMessenger->send($order->getContactNumber(), sprintf('Your PIN is %s '$pincode->getPin()));        
  40.     }
  41. }