Update the default list name

[MAILPOET-2198]
This commit is contained in:
Pavel Dohnal
2019-08-19 15:26:52 +02:00
committed by M. Shull
parent 1a0f9975bb
commit 3810e33742
7 changed files with 24 additions and 8 deletions

View File

@ -8,6 +8,7 @@ use MailPoet\Cron\Workers\AuthorizedSendingEmailsCheck;
use MailPoet\Cron\Workers\Beamer;
use MailPoet\Cron\Workers\InactiveSubscribers;
use MailPoet\Entities\UserFlagEntity;
use MailPoet\Features\FeaturesController;
use MailPoet\Settings\UserFlagsRepository;
use MailPoet\Cron\Workers\StatsNotifications\Worker;
use MailPoet\Cron\Workers\UnsubscribeTokens;
@ -47,12 +48,15 @@ class Populator {
/** @var ReferralDetector */
private $referralDetector;
const TEMPLATES_NAMESPACE = '\MailPoet\Config\PopulatorData\Templates\\';
/** @var FeaturesController */
private $flags_controller;
function __construct(
SettingsController $settings,
WPFunctions $wp,
Captcha $captcha,
ReferralDetector $referralDetector
ReferralDetector $referralDetector,
FeaturesController $flags_controller
) {
$this->settings = $settings;
$this->wp = $wp;
@ -139,6 +143,7 @@ class Populator {
'Painter',
'FarmersMarket',
];
$this->flags_controller = $flags_controller;
}
function up() {
@ -339,11 +344,15 @@ class Populator {
// Default segment
if (Segment::where('type', 'default')->count() === 0) {
$this->default_segment = Segment::create();
$this->default_segment->hydrate([
$new_list = [
'name' => $this->wp->__('My First List', 'mailpoet'),
'description' =>
$this->wp->__('This list is automatically created when you install MailPoet.', 'mailpoet'),
]);
];
if ($this->flags_controller->isSupported(FeaturesController::NEW_DEFAULT_LIST_NAME)) {
$new_list['name'] = $this->wp->__('Newsletter mailing list', 'mailpoet');
}
$this->default_segment->hydrate($new_list);
$this->default_segment->save();
}
}

View File

@ -8,10 +8,12 @@ class FeaturesController {
// Define features below in the following form:
// const FEATURE_NAME_OF_FEATURE = 'name-of-feature';
const NEW_DEFAULT_LIST_NAME = 'new-default-list-name';
// Define feature defaults in the array below in the following form:
// self::FEATURE_NAME_OF_FEATURE => true,
private $defaults = [
self::NEW_DEFAULT_LIST_NAME => false,
];
/** @var array */

View File

@ -4,6 +4,7 @@ namespace MailPoet\Test\API\JSON\v1;
use Codeception\Stub;
use MailPoet\Config\Activator;
use MailPoet\Config\Populator;
use MailPoet\Features\FeaturesController;
use MailPoet\Models\Setting;
use MailPoet\API\JSON\v1\Setup;
use MailPoet\Referrals\ReferralDetector;
@ -27,7 +28,7 @@ class SetupTest extends \MailPoetTest {
$settings = new SettingsController();
$referral_detector = new ReferralDetector($wp, $settings);
$populator = new Populator($settings, $wp, new Captcha(), $referral_detector);
$populator = new Populator($settings, $wp, new Captcha(), $referral_detector, new FeaturesController());
$router = new Setup($wp, new Activator($settings, $populator));
$response = $router->reset();
expect($response->status)->equals(APIResponse::STATUS_OK);

View File

@ -13,6 +13,7 @@ use MailPoet\Cron\Workers\SendingQueue\SendingQueue as SendingQueueWorker;
use MailPoet\Cron\Workers\SendingQueue\Tasks\Mailer as MailerTask;
use MailPoet\Cron\Workers\SendingQueue\Tasks\Newsletter as NewsletterTask;
use MailPoet\Cron\Workers\StatsNotifications\Scheduler as StatsNotificationsScheduler;
use MailPoet\Features\FeaturesController;
use MailPoet\Mailer\MailerLog;
use MailPoet\Models\Newsletter;
use MailPoet\Models\NewsletterLink;
@ -50,7 +51,7 @@ class SendingQueueTest extends \MailPoetTest {
wp_set_current_user($wp_users[0]->ID);
$this->settings = new SettingsController();
$referral_detector = new ReferralDetector(WPFunctions::get(), $this->settings);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector, new FeaturesController());
$populator->up();
$this->subscriber = Subscriber::create();
$this->subscriber->email = 'john@doe.com';

View File

@ -5,6 +5,7 @@ use Codeception\Stub;
use Codeception\Stub\Expected;
use MailPoet\Config\Populator;
use MailPoet\Cron\Workers\SendingQueue\Tasks\Mailer as MailerTask;
use MailPoet\Features\FeaturesController;
use MailPoet\Mailer\Mailer;
use MailPoet\Models\Setting;
use MailPoet\Models\Subscriber;
@ -28,7 +29,7 @@ class MailerTest extends \MailPoetTest {
wp_set_current_user($wp_users[0]->ID);
$this->settings = new SettingsController();
$referral_detector = new ReferralDetector(WPFunctions::get(), $this->settings);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector, new FeaturesController());
$populator->up();
$this->mailer_task = new MailerTask();
$this->sender = $this->settings->get('sender');

View File

@ -2,6 +2,7 @@
namespace MailPoet\Test\Newsletter;
use MailPoet\Config\Populator;
use MailPoet\Features\FeaturesController;
use MailPoet\Models\CustomField;
use MailPoet\Models\Newsletter;
use MailPoet\Models\SendingQueue;
@ -28,7 +29,7 @@ class ShortcodesTest extends \MailPoetTest {
parent::_before();
$this->settings = new SettingsController();
$referral_detector = new ReferralDetector(WPFunctions::get(), $this->settings);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector, new FeaturesController());
$populator->up();
$this->WP_user = $this->_createWPUser();
$this->WP_post = $this->_createWPPost();

View File

@ -1,6 +1,7 @@
<?php
namespace MailPoet\Test\Subscription;
use MailPoet\Features\FeaturesController;
use MailPoet\Referrals\ReferralDetector;
use MailPoet\Router\Router;
use MailPoet\Subscription\Url;
@ -16,7 +17,7 @@ class UrlTest extends \MailPoetTest {
parent::_before();
$this->settings = new SettingsController;
$referral_detector = new ReferralDetector(WPFunctions::get(), $this->settings);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector);
$populator = new Populator($this->settings, WPFunctions::get(), new Captcha, $referral_detector, new FeaturesController());
$populator->up();
}