Merge branch 'standard_scheduling' of mailpoet:mailpoet/mailpoet into standard_scheduling

This commit is contained in:
Vlad
2016-05-18 14:37:11 -04:00
3 changed files with 10 additions and 7 deletions

View File

@@ -192,10 +192,6 @@ class Populator {
array(
'name' => 'schedule',
'newsletter_type' => 'notification',
),
array(
'name' => 'segments',
'newsletter_type' => 'notification',
)
);
}

View File

@@ -68,7 +68,7 @@ class Scheduler {
function processPostNotificationNewsletter($newsletter, $queue) {
$immediate_interval =
\MailPoet\Newsletter\Scheduler\Scheduler::INTERVAL_IMMEDIATELY;
$segments = unserialize($newsletter->segments);
$segments = $newsletter->segments()->findArray();
if(empty($segments) && $newsletter->intervalType === $immediate_interval) {
$queue->delete();
return;
@@ -76,7 +76,10 @@ class Scheduler {
self::updateQueueNextRunDate($queue, $newsletter);
return;
}
$subscribers = Subscriber::getSubscribedInSegments($segments)
$segment_ids = array_map(function($segment) {
return $segment['id'];
}, $segments);
$subscribers = Subscriber::getSubscribedInSegments($segment_ids)
->findArray();
$subscribers = Helpers::arrayColumn($subscribers, 'subscriber_id');
$subscribers = array_unique($subscribers);

View File

@@ -88,7 +88,11 @@ class SendingQueue {
$message = __('The newsletter has been scheduled.');
} else {
$subscribers = Subscriber::getSubscribedInSegments($data['segments'])
$segments = $newsletter->segments()->findArray();
$segment_ids = array_map(function($segment) {
return $segment['id'];
}, $segments);
$subscribers = Subscriber::getSubscribedInSegments($segment_ids)
->findArray();
$subscribers = Helpers::arrayColumn($subscribers, 'subscriber_id');
$subscribers = array_unique($subscribers);