Fix dynamic segments filtering in subscriber export
[MAILPOET-3177]
This commit is contained in:
committed by
Veljko V
parent
1b74c3e195
commit
aff4c9d5b7
@ -187,7 +187,7 @@ class ImportExportRepository {
|
||||
->setParameter('segmentName', $segment->getName());
|
||||
$filters = $segment->getDynamicFilters();
|
||||
foreach ($filters as $filter) {
|
||||
$qb = $this->filterHandler->apply($qb, $filter);
|
||||
$qb = $this->filterHandler->apply($qb, $filter->getFilterData());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4,6 +4,7 @@ namespace MailPoet\Subscribers\ImportExport;
|
||||
|
||||
use MailPoet\CustomFields\CustomFieldsRepository;
|
||||
use MailPoet\Entities\CustomFieldEntity;
|
||||
use MailPoet\Entities\DynamicSegmentFilterData;
|
||||
use MailPoet\Entities\DynamicSegmentFilterEntity;
|
||||
use MailPoet\Entities\SegmentEntity;
|
||||
use MailPoet\Entities\SubscriberCustomFieldEntity;
|
||||
@ -289,7 +290,7 @@ class ImportExportRepositoryTest extends \MailPoetTest {
|
||||
$segment1 = $this->createSegment('First', SegmentEntity::TYPE_DEFAULT);
|
||||
$segment2 = $this->createSegment('Dynamic Segment', SegmentEntity::TYPE_DYNAMIC);
|
||||
$this->createDynamicSegmentFilter($segment2, [
|
||||
'segmentType' => DynamicSegmentFilterEntity::TYPE_USER_ROLE,
|
||||
'segmentType' => DynamicSegmentFilterData::TYPE_USER_ROLE,
|
||||
'wordpressRole' => 'editor',
|
||||
]);
|
||||
$this->createSubscriberSegment($user4, $segment1, SubscriberEntity::STATUS_SUBSCRIBED);
|
||||
@ -382,7 +383,7 @@ class ImportExportRepositoryTest extends \MailPoetTest {
|
||||
SegmentEntity $segment,
|
||||
array $filterData
|
||||
): DynamicSegmentFilterEntity {
|
||||
$filter = new DynamicSegmentFilterEntity($segment, $filterData);
|
||||
$filter = new DynamicSegmentFilterEntity($segment, new DynamicSegmentFilterData($filterData));
|
||||
$this->entityManager->persist($filter);
|
||||
$this->entityManager->flush();
|
||||
return $filter;
|
||||
|
Reference in New Issue
Block a user