Spaces:
No application file
No application file
File size: 953 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 |
<?php
namespace Mautic\CampaignBundle\Helper;
use Mautic\CampaignBundle\Event\CampaignLeadChangeEvent;
class CampaignEventHelper
{
/**
* Determine if this campaign applies.
*/
public static function validateLeadChangeTrigger(CampaignLeadChangeEvent $eventDetails = null, array $event): bool
{
if (null == $eventDetails) {
return true;
}
$limitToCampaigns = $event['properties']['campaigns'];
$action = $event['properties']['action'];
// check against selected campaigns
if (!empty($limitToCampaigns) && !in_array($event['campaign']['id'], $limitToCampaigns)) {
return false;
}
// check against the selected action (was lead removed or added)
$func = 'was'.ucfirst($action);
if (!method_exists($eventDetails, $func) || !$eventDetails->$func()) {
return false;
}
return true;
}
}
|