Spaces:
No application file
No application file
File size: 1,764 Bytes
d2897cd |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
<?php
namespace Mautic\CoreBundle\Event;
use Doctrine\ORM\EntityManagerInterface;
use Mautic\LeadBundle\Entity\Lead;
use Symfony\Contracts\EventDispatcher\Event;
class CommonEvent extends Event
{
/**
* @var EntityManagerInterface
*/
protected $em;
/**
* @var object
*/
protected $entity;
/**
* @var bool
*/
protected $isNew = true;
/**
* @var bool|array
*/
protected $changes;
/**
* @var string
*/
protected $failed;
/**
* Sets the entity manager for the event to use.
*
* @param EntityManagerInterface $em
*/
public function setEntityManager($em): void
{
$this->em = $em;
}
/**
* Returns if a saved lead is new or not.
*
* @return bool
*/
public function isNew()
{
return $this->isNew;
}
public function setFailed(string $reason): void
{
$this->failed = $reason;
}
/**
* Gets changes to original entity.
*
* @return mixed
*/
public function getChanges()
{
if (null === $this->changes) {
$this->changes = false;
if ($this->entity && method_exists($this->entity, 'getChanges')) {
$this->changes = $this->entity->getChanges();
// Reset changes
if (method_exists($this->entity, 'resetChanges')) {
$this->entity->resetChanges();
}
}
}
return $this->changes;
}
/**
* @return Lead|null
*/
public function getLead()
{
if (method_exists($this->entity, 'getLead')) {
return $this->entity->getLead();
}
return null;
}
}
|