Remove old dynamic segments code
[MAILPOET-3484]
This commit is contained in:
@@ -2,7 +2,6 @@
|
||||
|
||||
namespace MailPoet\Models;
|
||||
|
||||
use MailPoet\DynamicSegments\Filters\Filter;
|
||||
use MailPoet\Entities\SegmentEntity;
|
||||
use MailPoet\Models\Segment as MailPoetSegment;
|
||||
use MailPoet\WP\Functions as WPFunctions;
|
||||
@@ -19,23 +18,6 @@ class DynamicSegment extends MailPoetSegment {
|
||||
|
||||
const TYPE_DYNAMIC = SegmentEntity::TYPE_DYNAMIC;
|
||||
|
||||
/** @var Filter[] */
|
||||
private $filters = [];
|
||||
|
||||
/**
|
||||
* @return Filter[]
|
||||
*/
|
||||
public function getFilters() {
|
||||
return $this->filters;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param Filter[] $filters
|
||||
*/
|
||||
public function setFilters(array $filters) {
|
||||
$this->filters = $filters;
|
||||
}
|
||||
|
||||
public function save() {
|
||||
$this->set('type', DynamicSegment::TYPE_DYNAMIC);
|
||||
return parent::save();
|
||||
|
@@ -1,34 +0,0 @@
|
||||
<?php
|
||||
|
||||
namespace MailPoet\Models;
|
||||
|
||||
use MailPoet\DynamicSegments\Mappers\DBMapper;
|
||||
use MailPoet\DynamicSegments\Persistence\Loading\SingleSegmentLoader;
|
||||
use MailPoet\DynamicSegments\RequirementsChecker;
|
||||
use MailPoet\WooCommerce\Helper as WooCommerceHelper;
|
||||
|
||||
class SubscribersInDynamicSegment extends Subscriber {
|
||||
public static function listingQuery(array $data = []) {
|
||||
$query = self::select(self::$_table . '.*');
|
||||
$singleSegmentLoader = new SingleSegmentLoader(new DBMapper());
|
||||
$dynamicSegment = $singleSegmentLoader->load($data['filter']['segment']);
|
||||
if (self::shouldSkip($dynamicSegment)) {
|
||||
return $query->whereRaw('0=1');
|
||||
}
|
||||
foreach ($dynamicSegment->getFilters() as $filter) {
|
||||
$query = $filter->toSql($query);
|
||||
}
|
||||
if (isset($data['group'])) {
|
||||
$query->filter('groupBy', $data['group']);
|
||||
}
|
||||
if (isset($data['search']) && $data['search']) {
|
||||
$query->filter('search', $data['search']);
|
||||
}
|
||||
return $query;
|
||||
}
|
||||
|
||||
private static function shouldSkip($dynamicSegment) {
|
||||
$requirementsChecker = new RequirementsChecker(new WooCommerceHelper());
|
||||
return $requirementsChecker->shouldSkipSegment($dynamicSegment);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user