- Enables check for subscribers who has "subscribed" status during

newsletter sending
- Enforces "signup_confirmation" option when selecting subscribers for
  newsletter sending
- Updates unit tests
This commit is contained in:
Vlad
2016-04-15 19:57:18 -04:00
committed by Tautvidas Sipavičius
parent d4abaa7150
commit 91076580ef
4 changed files with 74 additions and 14 deletions

View File

@ -65,8 +65,15 @@ class Scheduler {
function processPostNotificationNewsletter($newsletter, $queue) {
$next_run_date = $this->getQueueNextRunDate($newsletter->schedule);
$segments = unserialize($newsletter->segments);
$subscribers = SubscriberSegment::whereIn('segment_id', $segments)
->findArray();
if((boolean) Setting::getValue('signup_confirmation.enabled')) {
$subscribers = Subscriber::getSubscribedInSegments($segments)
->findArray();
}
else {
$subscribers = SubscriberSegment::whereIn('segment_id', $segments)
->where('status', 'subscribed')
->findArray();
}
$subscribers = Helpers::arrayColumn($subscribers, 'subscriber_id');
$subscribers = array_unique($subscribers);
if(!count($subscribers) || !$this->checkIfNewsletterChanged($newsletter)) {