<?php
namespace BitBag\OpenMarketplace\EventListener;
use Sylius\Component\Resource\ResourceActions;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
use Sylius\Bundle\UserBundle\UserEvents;
use Sylius\Component\User\Model\UserInterface;
use Symfony\Component\EventDispatcher\GenericEvent;
use Symfony\Component\HttpClient\HttpClient;
use Psr\Log\LoggerInterface;
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
class PostEmailVerificationSubscriber implements EventSubscriberInterface
{
private $logger;
private $tokenStorage;
public function __construct(LoggerInterface $logger, TokenStorageInterface $tokenStorage)
{
$this->logger = $logger;
$this->tokenStorage = $tokenStorage;
}
public static function getSubscribedEvents()
{
return [
ResourceActions::UPDATE => 'preEmailVerification',
UserEvents::POST_EMAIL_VERIFICATION => 'postEmailVerification',
];
}
public function preEmailVerification(GenericEvent $event)
{
}
public function postEmailVerification(GenericEvent $event)
{
$urlbase = 'https://back.enimad.com/';
$token=$_ENV['TOKEN_ENILEADS'];
$sequence=$_ENV['SEQUENCE_ONBOARDING'];
$date = new \DateTime();
$formattedDate = $date->format('Y-m-d');
// Si $PR=$_COOKIE['PR']; exisite alors on récupère la valeur de la variable
if (isset($_COOKIE['PR'])) {
$PR = $_COOKIE['PR'];
} else {
$PR = '0';
}
$user = $event->getSubject();
$mail = $user->getEmail();
$customer = $user->getCustomer();
$ValueFinal=array(array('date-activation',$formattedDate));
$client = HttpClient::create();
// Récupération de l'ID du lead
$url_getID = $urlbase.'rest/lead/Check_mail/'.$mail.'?token='.$token;
$response = $client->request('GET', $url_getID);
$data = $response->toArray();
$id_lead = $data['reponse'];
$url = $urlbase.'rest/lead/'.$id_lead.'/update_data?token='.$token.'&data='. urlencode(json_encode($ValueFinal));
$response = $client->request('GET', $url);
// Ajout du tag
// dd($Tags);
$Tags = 'validation';
$url_addTag = $urlbase.'rest/lead/'.$id_lead.'/addTag?token='.$token.'&tag='.$Tags;
$response = $client->request('GET', $url_addTag);
$Tags2 = 'newsletter';
$url_addTag2 = $urlbase.'rest/lead/'.$id_lead.'/addTag?token='.$token.'&tag='.$Tags2;
$response = $client->request('GET', $url_addTag2);
// Actions to perform after email verification
}
}