<?php
namespace App\BookingProcess\ProcessEventSubscriber;
use App\Entity\Booking\Quote;
use Crea\ProcessBundle\ProcessEvent\ProcessEvents;
use Crea\ProcessBundle\ProcessEvent\ProcessResponseEvent;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class ProcessFullwebErrorByContextSubscriber implements EventSubscriberInterface
{
public static function getSubscribedEvents(): array
{
return [
ProcessEvents::PROCESS_RESPONSE => 'processResponse',
];
}
public function processResponse(ProcessResponseEvent $event): void
{
$entity = $event->getProcess()->getEntity();
if ($entity instanceOf Quote && $entity->getConverter() === "FULLWEB") {
$processContext = $event->getProcess()->getProcessContext();
if (array_key_exists("full_web_error_by_context", $processContext)) {
$event->setResponse(array_merge($event->getResponse(), $processContext["full_web_error_by_context"]));
}
}
}
}