Add condition to WordPress trigger method

[MAILPOET-1571]
This commit is contained in:
Pavel Dohnal
2019-01-22 09:26:50 +01:00
parent b66c724c4a
commit 627088e43d
2 changed files with 6 additions and 2 deletions

View File

@@ -8,6 +8,7 @@ use MailPoet\Cron\Workers\SendingQueue\SendingQueue as SendingQueueWorker;
use MailPoet\Cron\Workers\Bounce as BounceWorker;
use MailPoet\Cron\Workers\KeyCheck\PremiumKeyCheck as PremiumKeyCheckWorker;
use MailPoet\Cron\Workers\KeyCheck\SendingServiceKeyCheck as SendingServiceKeyCheckWorker;
use MailPoet\Cron\Workers\StatsNotifications\Worker;
use MailPoet\Mailer\MailerLog;
use MailPoet\Models\Setting;
use MailPoet\Services\Bridge;
@@ -44,6 +45,8 @@ class WordPress {
$premium_key_specified = Bridge::isPremiumKeySpecified();
$premium_keycheck_due_tasks = PremiumKeyCheckWorker::getDueTasks();
$premium_keycheck_future_tasks = PremiumKeyCheckWorker::getFutureTasks();
// stats notifications
$stats_notifications_tasks = (bool)Worker::getDueTasks();
// check requirements for each worker
$sending_queue_active = (($scheduled_queues || $running_queues) && !$sending_limit_reached && !$sending_is_paused);
$bounce_sync_active = ($mp_sending_enabled && ($bounce_due_tasks || !$bounce_future_tasks));
@@ -57,6 +60,7 @@ class WordPress {
|| $bounce_sync_active
|| $sending_service_key_check_active
|| $premium_key_check_active
|| $stats_notifications_tasks
);
}

View File

@@ -38,7 +38,7 @@ class Worker {
function process() {
$settings = Setting::getValue(self::SETTINGS_KEY);
$this->mailer->sender = $this->mailer->getSenderNameAndAddress($this->constructSenderEmail());
foreach($this->getTasks() as $task) {
foreach(self::getDueTasks() as $task) {
try {
$this->mailer->send($this->constructNewsletter($task), $settings['address']);
} catch(\Exception $e) {
@@ -64,7 +64,7 @@ class Worker {
];
}
private function getTasks() {
public static function getDueTasks() {
$date = new Carbon();
return ScheduledTask::orderByAsc('priority')
->orderByAsc('updated_at')