- Updates mailer task to store mailer instance
This commit is contained in:
@ -21,7 +21,7 @@ class SendingQueue {
|
||||
|
||||
function __construct($timer = false) {
|
||||
$this->mailer_task = new MailerTask();
|
||||
$this->newsletter_task = new NewsletterTask($this->mailer_task);
|
||||
$this->newsletter_task = new NewsletterTask();
|
||||
$this->timer = ($timer) ? $timer : microtime(true);
|
||||
}
|
||||
|
||||
@ -34,6 +34,8 @@ class SendingQueue {
|
||||
$queue->delete();
|
||||
continue;
|
||||
}
|
||||
// configure mailer
|
||||
$this->mailer_task->configureMailer($newsletter);
|
||||
if(is_null($queue->newsletter_rendered_body)) {
|
||||
$queue->newsletter_rendered_body = json_encode($newsletter['rendered_body']);
|
||||
$queue->save();
|
||||
@ -98,7 +100,6 @@ class SendingQueue {
|
||||
if($processing_method === 'individual') {
|
||||
$queue = $this->sendNewsletters(
|
||||
$queue,
|
||||
$newsletter,
|
||||
$prepared_subscribers_ids,
|
||||
$prepared_newsletters[0],
|
||||
$prepared_subscribers[0],
|
||||
@ -112,7 +113,6 @@ class SendingQueue {
|
||||
if($processing_method === 'bulk') {
|
||||
$queue = $this->sendNewsletters(
|
||||
$queue,
|
||||
$newsletter,
|
||||
$prepared_subscribers_ids,
|
||||
$prepared_newsletters,
|
||||
$prepared_subscribers,
|
||||
@ -123,12 +123,11 @@ class SendingQueue {
|
||||
}
|
||||
|
||||
function sendNewsletters(
|
||||
$queue, $newsletter_object, $prepared_subscribers_ids, $prepared_newsletters,
|
||||
$queue, $prepared_subscribers_ids, $prepared_newsletters,
|
||||
$prepared_subscribers, $statistics
|
||||
) {
|
||||
// send newsletter
|
||||
$send_result = $this->mailer_task->send(
|
||||
$newsletter_object,
|
||||
$prepared_newsletters,
|
||||
$prepared_subscribers
|
||||
);
|
||||
|
@ -9,14 +9,14 @@ if(!defined('ABSPATH')) exit;
|
||||
class Mailer {
|
||||
public $mta_config;
|
||||
public $mta_log;
|
||||
public $mailer = null;
|
||||
|
||||
function __construct() {
|
||||
$this->mta_config = $this->getMailerConfig();
|
||||
$this->mta_log = $this->getMailerLog();
|
||||
$this->mailer = $this->configureMailer();
|
||||
}
|
||||
|
||||
function configureMailer(array $newsletter = null, $mailer = false) {
|
||||
function configureMailer(array $newsletter = null) {
|
||||
$sender['address'] = (!empty($newsletter['sender_address'])) ?
|
||||
$newsletter['sender_address'] :
|
||||
false;
|
||||
@ -35,14 +35,8 @@ class Mailer {
|
||||
if(!$reply_to['address']) {
|
||||
$reply_to = false;
|
||||
}
|
||||
if (!$mailer) {
|
||||
$mailer = new MailerFactory($method = false, $sender, $reply_to);
|
||||
}
|
||||
else {
|
||||
$mailer->mailer_instance->sender = $mailer->getSender($sender);
|
||||
$mailer->mailer_instance->reply_to = $mailer->getReplyTo($reply_to);
|
||||
}
|
||||
return $mailer;
|
||||
$this->mailer = new MailerFactory($method = false, $sender, $reply_to);
|
||||
return $this->mailer;
|
||||
}
|
||||
|
||||
function getMailerConfig() {
|
||||
@ -80,11 +74,10 @@ class Mailer {
|
||||
return $this->mailer->transformSubscriber($subscriber);
|
||||
}
|
||||
|
||||
function send(array $newsletter_object, $prepared_newsletters,
|
||||
$prepared_subscribers
|
||||
) {
|
||||
$mailer = $this->configureMailer($newsletter_object, $this->mailer);
|
||||
return $mailer->mailer_instance->send($prepared_newsletters, $prepared_subscribers);
|
||||
function send($prepared_newsletters, $prepared_subscribers) {
|
||||
return ($this->mailer) ?
|
||||
$this->mailer->mailer_instance->send($prepared_newsletters, $prepared_subscribers) :
|
||||
false;
|
||||
}
|
||||
|
||||
function checkSendingLimit() {
|
||||
|
Reference in New Issue
Block a user