Spaces:
No application file
No application file
namespace Mautic\LeadBundle\Model; | |
class SegmentActionModel | |
{ | |
public function __construct( | |
private LeadModel $contactModel | |
) { | |
} | |
public function addContacts(array $contactIds, array $segmentIds): void | |
{ | |
$contacts = $this->contactModel->getLeadsByIds($contactIds); | |
foreach ($contacts as $contact) { | |
if (!$this->contactModel->canEditContact($contact)) { | |
continue; | |
} | |
$this->contactModel->addToLists($contact, $segmentIds); | |
} | |
$this->contactModel->saveEntities($contacts); | |
} | |
public function removeContacts(array $contactIds, array $segmentIds): void | |
{ | |
$contacts = $this->contactModel->getLeadsByIds($contactIds); | |
foreach ($contacts as $contact) { | |
if (!$this->contactModel->canEditContact($contact)) { | |
continue; | |
} | |
$this->contactModel->removeFromLists($contact, $segmentIds); | |
} | |
$this->contactModel->saveEntities($contacts); | |
} | |
} | |