- Places supervisor/daemon/worker under the new Cron class

- Updates endpoints
- Integrates queue worker with MailPoet mailer
- Fixes script activation check logic
This commit is contained in:
MrCasual
2015-12-02 22:48:15 -05:00
parent 48fbce22e7
commit d2e5fb89c2
31 changed files with 700 additions and 299 deletions

View File

@ -1,10 +1,8 @@
<?php
namespace MailPoet\Router;
use MailPoet\Queue\Daemon;
use MailPoet\Queue\Supervisor;
use MailPoet\Models\Queue as SendingQueue;
use MailPoet\Models\Segment;
use MailPoet\Models\SendingQueue;
use MailPoet\Util\Helpers;
if(!defined('ABSPATH')) exit;
@ -45,20 +43,29 @@ class Queue {
}
function getDaemonStatus() {
$daemon = new \MailPoet\Queue\BootStrapMenu();
$daemon = new \MailPoet\Cron\BootStrapMenu();
wp_send_json($daemon->bootStrap());
}
function addQueue($data) {
$queue = SendingQueue::where('newsletter_id', $data['newsletter_id'])
->whereNull('status')
->findArray();
!d($queue);
exit;
$queue = SendingQueue::create();
$queue->newsletter_id = $data['newsletter_id'];
$subscriber_ids = array();
$segments = Segment::whereIn('id', $data['segments'])->findMany();
$segments = Segment::whereIn('id', $data['segments'])
->findMany();
foreach($segments as $segment) {
$subscriber_ids = array_merge($subscriber_ids, Helpers::arrayColumn(
$segment->subscribers()->findArray(),
$segment->subscribers()
->findArray(),
'id'
));
}