Refactor segment lists fetching methods to separate repository

[MAILPOET-3164]
This commit is contained in:
Rostislav Wolny
2021-01-20 13:27:09 +01:00
committed by Veljko V
parent cd578e6475
commit 8456581695
10 changed files with 320 additions and 97 deletions

View File

@@ -77,7 +77,7 @@ use MailPoet\Form\Util\Export;
use MailPoet\Models\Form;
use MailPoet\Router\Endpoints\FormPreview;
use MailPoet\Router\Router;
use MailPoet\Segments\SegmentSubscribersRepository;
use MailPoet\Segments\SegmentsSimpleListRepository;
use MailPoet\Settings\Pages;
use MailPoet\Settings\UserFlagsController;
use MailPoet\WP\AutocompletePostListLoader as WPPostListLoader;
@@ -117,8 +117,8 @@ class FormEditor {
/** @var WPPostListLoader */
private $wpPostListLoader;
/** @var SegmentSubscribersRepository */
private $segmentSubscribersRepository;
/** @var SegmentsSimpleListRepository */
private $segmentsListRepository;
private $activeTemplates = [
FormEntity::DISPLAY_TYPE_POPUP => [
@@ -205,7 +205,7 @@ class FormEditor {
UserFlagsController $userFlags,
WPPostListLoader $wpPostListLoader,
TemplateRepository $templateRepository,
SegmentSubscribersRepository $segmentSubscribersRepository
SegmentsSimpleListRepository $segmentsListRepository
) {
$this->pageRenderer = $pageRenderer;
$this->customFieldsRepository = $customFieldsRepository;
@@ -218,7 +218,7 @@ class FormEditor {
$this->templatesRepository = $templateRepository;
$this->userFlags = $userFlags;
$this->wpPostListLoader = $wpPostListLoader;
$this->segmentSubscribersRepository = $segmentSubscribersRepository;
$this->segmentsListRepository = $segmentsListRepository;
}
public function render() {
@@ -240,7 +240,7 @@ class FormEditor {
'shortcode' => Export::get('shortcode', $form),
],
'mailpoet_pages' => Pages::getMailPoetPages(),
'segments' => $this->segmentSubscribersRepository->getSimpleSegmentListWithSubscribersCounts(SegmentEntity::TYPE_DEFAULT),
'segments' => $this->segmentsListRepository->getListWithSubscribedSubscribersCounts([SegmentEntity::TYPE_DEFAULT]),
'styles' => $this->formRenderer->getCustomStyles($form),
'date_types' => array_map(function ($label, $value) {
return [