Spaces:
No application file
No application file
File size: 2,124 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 95 96 97 98 99 |
<?php
namespace Mautic\CampaignBundle\Event;
use Mautic\CampaignBundle\Entity\LeadEventLog;
use Mautic\CampaignBundle\EventCollector\Accessor\Event\AbstractEventAccessor;
class ConditionEvent extends CampaignExecutionEvent
{
use ContextTrait;
private bool $passed = false;
public function __construct(
private AbstractEventAccessor $eventConfig,
private LeadEventLog $eventLog
) {
// @deprecated support for pre 2.13.0; to be removed in 3.0
parent::__construct(
[
'eventSettings' => $eventConfig->getConfig(),
'eventDetails' => null,
'event' => $eventLog->getEvent(),
'lead' => $eventLog->getLead(),
'systemTriggered' => $eventLog->getSystemTriggered(),
],
null,
$eventLog
);
}
/**
* @return AbstractEventAccessor
*/
public function getEventConfig()
{
return $this->eventConfig;
}
/**
* @return LeadEventLog
*/
public function getLog()
{
return $this->eventLog;
}
/**
* Pass this condition.
*/
public function pass(): void
{
$this->passed = true;
}
/**
* Fail this condition.
*/
public function fail(): void
{
$this->passed = false;
}
public function wasConditionSatisfied(): bool
{
return $this->passed;
}
/**
* @param string $channel
* @param int|null $channelId
*/
public function setChannel($channel, $channelId = null): void
{
$this->log->setChannel($this->channel);
$this->log->setChannelId($this->channelId);
}
/**
* @deprecated 2.13.0 to be removed in 3.0; BC support
*/
public function getResult(): bool
{
return $this->passed;
}
/**
* @deprecated 2.13.0 to be removed in 3.0; BC support
*
* @return $this
*/
public function setResult($result)
{
$this->passed = (bool) $result;
return $this;
}
}
|