Add public keyword to methods
[MAILPOET-2413]
This commit is contained in:
@@ -13,16 +13,16 @@ class AuthorizedSendingEmailsCheck extends SimpleWorker {
|
||||
/** @var AuthorizedEmailsController */
|
||||
private $authorized_emails_controller;
|
||||
|
||||
function __construct(AuthorizedEmailsController $authorized_emails_controller) {
|
||||
public function __construct(AuthorizedEmailsController $authorized_emails_controller) {
|
||||
$this->authorized_emails_controller = $authorized_emails_controller;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return Bridge::isMPSendingServiceEnabled();
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$this->authorized_emails_controller->checkAuthorizedEmailAddresses();
|
||||
return true;
|
||||
}
|
||||
|
@@ -18,17 +18,17 @@ class Beamer extends SimpleWorker {
|
||||
/** @var WPFunctions */
|
||||
private $wp;
|
||||
|
||||
function __construct(SettingsController $settings, WPFunctions $wp) {
|
||||
public function __construct(SettingsController $settings, WPFunctions $wp) {
|
||||
parent::__construct();
|
||||
$this->settings = $settings;
|
||||
$this->wp = $wp;
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
return $this->setLastAnnouncementDate();
|
||||
}
|
||||
|
||||
function setLastAnnouncementDate() {
|
||||
public function setLastAnnouncementDate() {
|
||||
$response = $this->wp->wpRemoteGet(self::API_URL . '/posts?published=true&maxResults=1', [
|
||||
'headers' => [
|
||||
'Beamer-Api-Key' => self::API_KEY,
|
||||
@@ -42,7 +42,7 @@ class Beamer extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
$wp = new WPFunctions;
|
||||
$date = Carbon::createFromTimestamp($wp->currentTime('timestamp'));
|
||||
return $date->hour(11)->minute(00)->second(00)->addDay();
|
||||
|
@@ -29,22 +29,22 @@ class Bounce extends SimpleWorker {
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
function __construct(SettingsController $settings) {
|
||||
public function __construct(SettingsController $settings) {
|
||||
$this->settings = $settings;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function init() {
|
||||
public function init() {
|
||||
if (!$this->api) {
|
||||
$this->api = new API($this->settings->get(Mailer::MAILER_CONFIG_SETTING_NAME)['mailpoet_api_key']);
|
||||
}
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return Bridge::isMPSendingServiceEnabled();
|
||||
}
|
||||
|
||||
function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
BounceTask::prepareSubscribers($task);
|
||||
|
||||
if (!ScheduledTaskSubscriber::getUnprocessedCount($task->id)) {
|
||||
@@ -54,7 +54,7 @@ class Bounce extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$subscriber_batches = new BatchIterator($task->id, self::BATCH_SIZE);
|
||||
|
||||
if (count($subscriber_batches) === 0) {
|
||||
@@ -82,12 +82,12 @@ class Bounce extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processEmails(array $subscriber_emails) {
|
||||
public function processEmails(array $subscriber_emails) {
|
||||
$checked_emails = $this->api->checkBounces($subscriber_emails);
|
||||
$this->processApiResponse((array)$checked_emails);
|
||||
}
|
||||
|
||||
function processApiResponse(array $checked_emails) {
|
||||
public function processApiResponse(array $checked_emails) {
|
||||
foreach ($checked_emails as $email) {
|
||||
if (!isset($email['address'], $email['bounce'])) {
|
||||
continue;
|
||||
|
@@ -10,7 +10,7 @@ class ExportFilesCleanup extends SimpleWorker {
|
||||
const TASK_TYPE = 'export_files_cleanup';
|
||||
const DELETE_FILES_AFTER_X_DAYS = 1;
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$iterator = new \GlobIterator(Export::getExportPath() . '/' . Export::getFilePrefix() . '*.*');
|
||||
foreach ($iterator as $file) {
|
||||
if (is_string($file)) {
|
||||
|
@@ -19,7 +19,7 @@ class InactiveSubscribers extends SimpleWorker {
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
InactiveSubscribersController $inactive_subscribers_controller,
|
||||
SettingsController $settings
|
||||
) {
|
||||
@@ -29,7 +29,7 @@ class InactiveSubscribers extends SimpleWorker {
|
||||
}
|
||||
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$tracking_enabled = (bool)$this->settings->get('tracking.enabled');
|
||||
if (!$tracking_enabled) {
|
||||
$this->schedule();
|
||||
|
@@ -9,13 +9,13 @@ use MailPoet\Services\Bridge;
|
||||
abstract class KeyCheckWorker extends SimpleWorker {
|
||||
public $bridge;
|
||||
|
||||
function init() {
|
||||
public function init() {
|
||||
if (!$this->bridge) {
|
||||
$this->bridge = new Bridge();
|
||||
}
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
try {
|
||||
$result = $this->checkKey();
|
||||
} catch (\Exception $e) {
|
||||
@@ -30,5 +30,5 @@ abstract class KeyCheckWorker extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
abstract function checkKey();
|
||||
public abstract function checkKey();
|
||||
}
|
||||
|
@@ -11,17 +11,17 @@ class PremiumKeyCheck extends KeyCheckWorker {
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
function __construct(SettingsController $settings) {
|
||||
public function __construct(SettingsController $settings) {
|
||||
$this->settings = $settings;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return Bridge::isPremiumKeySpecified();
|
||||
}
|
||||
|
||||
function checkKey() {
|
||||
public function checkKey() {
|
||||
$premium_key = $this->settings->get(Bridge::PREMIUM_KEY_SETTING_NAME);
|
||||
$result = $this->bridge->checkPremiumKey($premium_key);
|
||||
$this->bridge->storePremiumKeyAndState($premium_key, $result);
|
||||
|
@@ -12,16 +12,16 @@ class SendingServiceKeyCheck extends KeyCheckWorker {
|
||||
/** @var SettingsController */
|
||||
private $settings;
|
||||
|
||||
function __construct(SettingsController $settings) {
|
||||
public function __construct(SettingsController $settings) {
|
||||
$this->settings = $settings;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return Bridge::isMPSendingServiceEnabled();
|
||||
}
|
||||
|
||||
function checkKey() {
|
||||
public function checkKey() {
|
||||
$mss_key = $this->settings->get(Mailer::MAILER_CONFIG_SETTING_NAME)['mailpoet_api_key'];
|
||||
$result = $this->bridge->checkMSSKey($mss_key);
|
||||
$this->bridge->storeMSSKeyAndState($mss_key, $result);
|
||||
|
@@ -29,7 +29,7 @@ class Scheduler {
|
||||
/** @var CronHelper */
|
||||
private $cron_helper;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
SubscribersFinder $subscribers_finder,
|
||||
LoggerFactory $logger_factory,
|
||||
CronHelper $cron_helper
|
||||
@@ -39,7 +39,7 @@ class Scheduler {
|
||||
$this->logger_factory = $logger_factory;
|
||||
}
|
||||
|
||||
function process($timer = false) {
|
||||
public function process($timer = false) {
|
||||
$timer = $timer ?: microtime(true);
|
||||
|
||||
// abort if execution limit is reached
|
||||
@@ -67,7 +67,7 @@ class Scheduler {
|
||||
}
|
||||
}
|
||||
|
||||
function processWelcomeNewsletter($newsletter, $queue) {
|
||||
public function processWelcomeNewsletter($newsletter, $queue) {
|
||||
$subscribers = $queue->getSubscribers();
|
||||
if (empty($subscribers[0])) {
|
||||
$queue->delete();
|
||||
@@ -90,7 +90,7 @@ class Scheduler {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processPostNotificationNewsletter($newsletter, $queue) {
|
||||
public function processPostNotificationNewsletter($newsletter, $queue) {
|
||||
$this->logger_factory->getLogger(LoggerFactory::TOPIC_POST_NOTIFICATIONS)->addInfo(
|
||||
'process post notification in scheduler',
|
||||
['newsletter_id' => $newsletter->id, 'task_id' => $queue->task_id]
|
||||
@@ -135,7 +135,7 @@ class Scheduler {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processScheduledAutomaticEmail($newsletter, $queue) {
|
||||
public function processScheduledAutomaticEmail($newsletter, $queue) {
|
||||
if ($newsletter->sendTo === 'segment') {
|
||||
$segment = Segment::findOne($newsletter->segment);
|
||||
$result = $this->subscribers_finder->addSubscribersToTaskFromSegments($queue->task(), [$segment]);
|
||||
@@ -159,7 +159,7 @@ class Scheduler {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processScheduledStandardNewsletter($newsletter, SendingTask $task) {
|
||||
public function processScheduledStandardNewsletter($newsletter, SendingTask $task) {
|
||||
$segments = $newsletter->segments()->findMany();
|
||||
$this->subscribers_finder->addSubscribersToTaskFromSegments($task->task(), $segments);
|
||||
// update current queue
|
||||
@@ -172,7 +172,7 @@ class Scheduler {
|
||||
return true;
|
||||
}
|
||||
|
||||
function verifyMailpoetSubscriber($subscriber_id, $newsletter, $queue) {
|
||||
public function verifyMailpoetSubscriber($subscriber_id, $newsletter, $queue) {
|
||||
$subscriber = Subscriber::findOne($subscriber_id);
|
||||
// check if subscriber is in proper segment
|
||||
$subscriber_in_segment =
|
||||
@@ -187,7 +187,7 @@ class Scheduler {
|
||||
return $this->verifySubscriber($subscriber, $queue);
|
||||
}
|
||||
|
||||
function verifyWPSubscriber($subscriber_id, $newsletter, $queue) {
|
||||
public function verifyWPSubscriber($subscriber_id, $newsletter, $queue) {
|
||||
// check if user has the proper role
|
||||
$subscriber = Subscriber::findOne($subscriber_id);
|
||||
if (!$subscriber || $subscriber->isWPUser() === false) {
|
||||
@@ -204,7 +204,7 @@ class Scheduler {
|
||||
return $this->verifySubscriber($subscriber, $queue);
|
||||
}
|
||||
|
||||
function verifySubscriber($subscriber, $queue) {
|
||||
public function verifySubscriber($subscriber, $queue) {
|
||||
if ($subscriber->status === Subscriber::STATUS_UNCONFIRMED) {
|
||||
// reschedule delivery
|
||||
$queue->rescheduleProgressively();
|
||||
@@ -216,7 +216,7 @@ class Scheduler {
|
||||
return true;
|
||||
}
|
||||
|
||||
function deleteQueueOrUpdateNextRunDate($queue, $newsletter) {
|
||||
public function deleteQueueOrUpdateNextRunDate($queue, $newsletter) {
|
||||
if ($newsletter->intervalType === PostNotificationScheduler::INTERVAL_IMMEDIATELY) {
|
||||
$queue->delete();
|
||||
return;
|
||||
@@ -231,7 +231,7 @@ class Scheduler {
|
||||
}
|
||||
}
|
||||
|
||||
function createNotificationHistory($newsletter_id) {
|
||||
public function createNotificationHistory($newsletter_id) {
|
||||
$newsletter = Newsletter::findOne($newsletter_id);
|
||||
$notification_history = $newsletter->createNotificationHistory();
|
||||
return ($notification_history->getErrors() === false) ?
|
||||
@@ -258,7 +258,7 @@ class Scheduler {
|
||||
}
|
||||
}
|
||||
|
||||
static function getScheduledQueues() {
|
||||
public static function getScheduledQueues() {
|
||||
return SendingTask::getScheduledQueues(self::TASK_BATCH_SIZE);
|
||||
}
|
||||
}
|
||||
|
@@ -15,13 +15,13 @@ class Migration extends SimpleWorker {
|
||||
const TASK_TYPE = 'migration';
|
||||
const BATCH_SIZE = 20;
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
// if migration was completed, don't run it again
|
||||
$completed_tasks = $this->getCompletedTasks();
|
||||
return empty($completed_tasks);
|
||||
}
|
||||
|
||||
function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$unmigrated_columns = $this->checkUnmigratedColumnsExist();
|
||||
$unmigrated_queues_count = 0;
|
||||
$unmigrated_queue_subscribers = [];
|
||||
@@ -48,7 +48,7 @@ class Migration extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function pauseSending() {
|
||||
public function pauseSending() {
|
||||
$mailer_log = MailerLog::getMailerLog();
|
||||
if (MailerLog::isSendingPaused($mailer_log)) {
|
||||
// sending is already paused
|
||||
@@ -62,7 +62,7 @@ class Migration extends SimpleWorker {
|
||||
return MailerLog::pauseSending($mailer_log);
|
||||
}
|
||||
|
||||
function resumeSending() {
|
||||
public function resumeSending() {
|
||||
$mailer_log = MailerLog::getMailerLog();
|
||||
if (!MailerLog::isSendingPaused($mailer_log)) {
|
||||
// sending is not paused
|
||||
@@ -75,7 +75,7 @@ class Migration extends SimpleWorker {
|
||||
}
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$this->migrateSendingQueues($timer);
|
||||
$this->migrateSubscribers($timer);
|
||||
$this->resumeSending();
|
||||
@@ -88,12 +88,12 @@ class Migration extends SimpleWorker {
|
||||
return in_array('type', $existing_columns);
|
||||
}
|
||||
|
||||
function getUnmigratedQueues() {
|
||||
public function getUnmigratedQueues() {
|
||||
return SendingQueueModel::where('task_id', 0)
|
||||
->whereNull('type');
|
||||
}
|
||||
|
||||
function getTaskIdsForUnmigratedSubscribers() {
|
||||
public function getTaskIdsForUnmigratedSubscribers() {
|
||||
global $wpdb;
|
||||
$query = sprintf(
|
||||
'SELECT queues.`task_id` FROM %1$s queues INNER JOIN %2$s tasks ON queues.`task_id` = tasks.`id` ' .
|
||||
@@ -110,7 +110,7 @@ class Migration extends SimpleWorker {
|
||||
/*
|
||||
* Migrate all sending queues without converting subscriber data
|
||||
*/
|
||||
function migrateSendingQueues($timer) {
|
||||
public function migrateSendingQueues($timer) {
|
||||
global $wpdb;
|
||||
|
||||
$queues = $this->getUnmigratedQueues()
|
||||
@@ -160,7 +160,7 @@ class Migration extends SimpleWorker {
|
||||
/*
|
||||
* Migrate subscribers for in-progress sending tasks from the `subscribers` field to a separate table
|
||||
*/
|
||||
function migrateSubscribers($timer) {
|
||||
public function migrateSubscribers($timer) {
|
||||
global $wpdb;
|
||||
|
||||
// find in-progress queues that have serialized subscribers
|
||||
@@ -188,7 +188,7 @@ class Migration extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function migrateTaskSubscribers($task_id, $timer) {
|
||||
public function migrateTaskSubscribers($task_id, $timer) {
|
||||
global $wpdb;
|
||||
|
||||
$migrated_unprocessed_count = ScheduledTaskSubscriber::getUnprocessedCount($task_id);
|
||||
@@ -241,7 +241,7 @@ class Migration extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function getNextRunDate($wp = null) {
|
||||
public function getNextRunDate($wp = null) {
|
||||
if (is_null($wp)) {
|
||||
$wp = new WPFunctions();
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@ use MailPoet\Mailer\MailerLog;
|
||||
use MailPoet\Tasks\Sending as SendingTask;
|
||||
|
||||
class SendingErrorHandler {
|
||||
function processError(
|
||||
public function processError(
|
||||
MailerError $error,
|
||||
SendingTask $sending_task,
|
||||
array $prepared_subscribers_ids,
|
||||
|
@@ -47,7 +47,7 @@ class SendingQueue {
|
||||
/** @var CronHelper */
|
||||
private $cron_helper;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
SendingErrorHandler $error_handler,
|
||||
StatsNotificationsScheduler $stats_notifications_scheduler,
|
||||
LoggerFactory $logger_factory,
|
||||
@@ -68,7 +68,7 @@ class SendingQueue {
|
||||
$this->cron_helper = $cron_helper;
|
||||
}
|
||||
|
||||
function process($timer = false) {
|
||||
public function process($timer = false) {
|
||||
$timer = $timer ?: microtime(true);
|
||||
$this->enforceSendingAndExecutionLimits($timer);
|
||||
foreach (self::getRunningQueues() as $queue) {
|
||||
@@ -165,7 +165,7 @@ class SendingQueue {
|
||||
}
|
||||
}
|
||||
|
||||
function processQueue($queue, $newsletter, $subscribers, $timer) {
|
||||
public function processQueue($queue, $newsletter, $subscribers, $timer) {
|
||||
// determine if processing is done in bulk or individually
|
||||
$processing_method = $this->mailer_task->getProcessingMethod();
|
||||
$prepared_newsletters = [];
|
||||
@@ -227,7 +227,7 @@ class SendingQueue {
|
||||
return $queue;
|
||||
}
|
||||
|
||||
function sendNewsletter(
|
||||
public function sendNewsletter(
|
||||
SendingTask $sending_task, $prepared_subscriber_id, $prepared_newsletter,
|
||||
$prepared_subscriber, $statistics, $timer, $extra_params = []
|
||||
) {
|
||||
@@ -247,7 +247,7 @@ class SendingQueue {
|
||||
);
|
||||
}
|
||||
|
||||
function sendNewsletters(
|
||||
public function sendNewsletters(
|
||||
SendingTask $sending_task, $prepared_subscribers_ids, $prepared_newsletters,
|
||||
$prepared_subscribers, $statistics, $timer, $extra_params = []
|
||||
) {
|
||||
@@ -301,14 +301,14 @@ class SendingQueue {
|
||||
return $sending_task;
|
||||
}
|
||||
|
||||
function enforceSendingAndExecutionLimits($timer) {
|
||||
public function enforceSendingAndExecutionLimits($timer) {
|
||||
// abort if execution limit is reached
|
||||
$this->cron_helper->enforceExecutionLimit($timer);
|
||||
// abort if sending limit has been reached
|
||||
MailerLog::enforceExecutionRequirements();
|
||||
}
|
||||
|
||||
static function getRunningQueues() {
|
||||
public static function getRunningQueues() {
|
||||
return SendingTask::getRunningQueues(self::TASK_BATCH_SIZE);
|
||||
}
|
||||
}
|
||||
|
@@ -13,14 +13,14 @@ use MailPoet\Subscription\SubscriptionUrlFactory;
|
||||
use MailPoet\Util\Helpers;
|
||||
|
||||
class Links {
|
||||
static function process($rendered_newsletter, $newsletter, $queue) {
|
||||
public static function process($rendered_newsletter, $newsletter, $queue) {
|
||||
list($rendered_newsletter, $links) =
|
||||
self::hashAndReplaceLinks($rendered_newsletter, $newsletter->id, $queue->id);
|
||||
self::saveLinks($links, $newsletter, $queue);
|
||||
return $rendered_newsletter;
|
||||
}
|
||||
|
||||
static function hashAndReplaceLinks($rendered_newsletter, $newsletter_id, $queue_id) {
|
||||
public static function hashAndReplaceLinks($rendered_newsletter, $newsletter_id, $queue_id) {
|
||||
// join HTML and TEXT rendered body into a text string
|
||||
$content = Helpers::joinObject($rendered_newsletter);
|
||||
list($content, $links) = NewsletterLinks::process($content, $newsletter_id, $queue_id);
|
||||
@@ -34,11 +34,11 @@ class Links {
|
||||
];
|
||||
}
|
||||
|
||||
static function saveLinks($links, $newsletter, $queue) {
|
||||
public static function saveLinks($links, $newsletter, $queue) {
|
||||
return NewsletterLinks::save($links, $newsletter->id, $queue->id);
|
||||
}
|
||||
|
||||
static function getUnsubscribeUrl($queue, $subscriber_id) {
|
||||
public static function getUnsubscribeUrl($queue, $subscriber_id) {
|
||||
$subscriber = Subscriber::where('id', $subscriber_id)->findOne();
|
||||
$settings = SettingsController::getInstance();
|
||||
if ((boolean)$settings->get('tracking.enabled')) {
|
||||
|
@@ -8,11 +8,11 @@ use MailPoet\Mailer\MailerLog;
|
||||
class Mailer {
|
||||
public $mailer;
|
||||
|
||||
function __construct($mailer = false) {
|
||||
public function __construct($mailer = false) {
|
||||
$this->mailer = ($mailer) ? $mailer : $this->configureMailer();
|
||||
}
|
||||
|
||||
function configureMailer($newsletter = null) {
|
||||
public function configureMailer($newsletter = null) {
|
||||
$sender['address'] = (!empty($newsletter->sender_address)) ?
|
||||
$newsletter->sender_address :
|
||||
false;
|
||||
@@ -36,25 +36,25 @@ class Mailer {
|
||||
return $this->mailer;
|
||||
}
|
||||
|
||||
function getMailerLog() {
|
||||
public function getMailerLog() {
|
||||
return MailerLog::getMailerLog();
|
||||
}
|
||||
|
||||
function updateSentCount() {
|
||||
public function updateSentCount() {
|
||||
return MailerLog::incrementSentCount();
|
||||
}
|
||||
|
||||
function getProcessingMethod() {
|
||||
public function getProcessingMethod() {
|
||||
return ($this->mailer->mailer_config['method'] === MailerFactory::METHOD_MAILPOET) ?
|
||||
'bulk' :
|
||||
'individual';
|
||||
}
|
||||
|
||||
function prepareSubscriberForSending($subscriber) {
|
||||
public function prepareSubscriberForSending($subscriber) {
|
||||
return $this->mailer->formatSubscriberNameAndEmailAddress($subscriber);
|
||||
}
|
||||
|
||||
function sendBulk($prepared_newsletters, $prepared_subscribers, $extra_params = []) {
|
||||
public function sendBulk($prepared_newsletters, $prepared_subscribers, $extra_params = []) {
|
||||
if ($this->getProcessingMethod() === 'individual') {
|
||||
throw new \LogicException('Trying to send a batch with individual processing method');
|
||||
}
|
||||
@@ -65,7 +65,7 @@ class Mailer {
|
||||
);
|
||||
}
|
||||
|
||||
function send($prepared_newsletter, $prepared_subscriber, $extra_params = []) {
|
||||
public function send($prepared_newsletter, $prepared_subscriber, $extra_params = []) {
|
||||
if ($this->getProcessingMethod() === 'bulk') {
|
||||
throw new \LogicException('Trying to send an individual email with a bulk processing method');
|
||||
}
|
||||
|
@@ -37,7 +37,7 @@ class Newsletter {
|
||||
/** @var Emoji */
|
||||
private $emoji;
|
||||
|
||||
function __construct(WPFunctions $wp = null, PostsTask $posts_task = null, GATracking $ga_tracking = null, Emoji $emoji = null) {
|
||||
public function __construct(WPFunctions $wp = null, PostsTask $posts_task = null, GATracking $ga_tracking = null, Emoji $emoji = null) {
|
||||
$settings = SettingsController::getInstance();
|
||||
$this->tracking_enabled = (boolean)$settings->get('tracking.enabled');
|
||||
if ($wp === null) {
|
||||
@@ -59,7 +59,7 @@ class Newsletter {
|
||||
$this->emoji = $emoji;
|
||||
}
|
||||
|
||||
function getNewsletterFromQueue($queue) {
|
||||
public function getNewsletterFromQueue($queue) {
|
||||
// get existing active or sending newsletter
|
||||
$newsletter = $queue->newsletter()
|
||||
->whereNull('deleted_at')
|
||||
@@ -87,7 +87,7 @@ class Newsletter {
|
||||
return $newsletter;
|
||||
}
|
||||
|
||||
function preProcessNewsletter(\MailPoet\Models\Newsletter $newsletter, $sending_task) {
|
||||
public function preProcessNewsletter(\MailPoet\Models\Newsletter $newsletter, $sending_task) {
|
||||
// return the newsletter if it was previously rendered
|
||||
if (!is_null($sending_task->getNewsletterRenderedBody())) {
|
||||
return (!$sending_task->validate()) ?
|
||||
@@ -167,7 +167,7 @@ class Newsletter {
|
||||
return $newsletter;
|
||||
}
|
||||
|
||||
function prepareNewsletterForSending($newsletter, $subscriber, $queue) {
|
||||
public function prepareNewsletterForSending($newsletter, $subscriber, $queue) {
|
||||
// shortcodes and links will be replaced in the subject, html and text body
|
||||
// to speed the processing, join content into a continuous string
|
||||
$rendered_newsletter = $queue->getNewsletterRenderedBody();
|
||||
@@ -204,7 +204,7 @@ class Newsletter {
|
||||
];
|
||||
}
|
||||
|
||||
function markNewsletterAsSent($newsletter, $queue) {
|
||||
public function markNewsletterAsSent($newsletter, $queue) {
|
||||
// if it's a standard or notification history newsletter, update its status
|
||||
if ($newsletter->type === NewsletterModel::TYPE_STANDARD ||
|
||||
$newsletter->type === NewsletterModel::TYPE_NOTIFICATION_HISTORY
|
||||
@@ -215,14 +215,14 @@ class Newsletter {
|
||||
}
|
||||
}
|
||||
|
||||
function getNewsletterSegments($newsletter) {
|
||||
public function getNewsletterSegments($newsletter) {
|
||||
$segments = NewsletterSegmentModel::where('newsletter_id', $newsletter->id)
|
||||
->select('segment_id')
|
||||
->findArray();
|
||||
return Helpers::flattenArray($segments);
|
||||
}
|
||||
|
||||
function stopNewsletterPreProcessing($error_code = null) {
|
||||
public function stopNewsletterPreProcessing($error_code = null) {
|
||||
MailerLog::processError(
|
||||
'queue_save',
|
||||
WPFunctions::get()->__('There was an error processing your newsletter during sending. If possible, please contact us and report this issue.', 'mailpoet'),
|
||||
|
@@ -14,7 +14,7 @@ class Posts {
|
||||
$this->logger_factory = LoggerFactory::getInstance();
|
||||
}
|
||||
|
||||
function extractAndSave($rendered_newsletter, $newsletter) {
|
||||
public function extractAndSave($rendered_newsletter, $newsletter) {
|
||||
if ($newsletter->type !== NewsletterModel::TYPE_NOTIFICATION_HISTORY) {
|
||||
return false;
|
||||
}
|
||||
@@ -44,7 +44,7 @@ class Posts {
|
||||
return true;
|
||||
}
|
||||
|
||||
function getAlcPostsCount($rendered_newsletter, \MailPoet\Models\Newsletter $newsletter) {
|
||||
public function getAlcPostsCount($rendered_newsletter, \MailPoet\Models\Newsletter $newsletter) {
|
||||
$template_posts_count = substr_count($newsletter->body, 'data-post-id');
|
||||
$newsletter_posts_count = substr_count($rendered_newsletter['html'], 'data-post-id');
|
||||
return $newsletter_posts_count - $template_posts_count;
|
||||
|
@@ -5,7 +5,7 @@ namespace MailPoet\Cron\Workers\SendingQueue\Tasks;
|
||||
use MailPoet\Newsletter\Shortcodes\Shortcodes as NewsletterShortcodes;
|
||||
|
||||
class Shortcodes {
|
||||
static function process($content, $content_source = null, $newsletter = null, $subscriber = null, $queue = null) {
|
||||
public static function process($content, $content_source = null, $newsletter = null, $subscriber = null, $queue = null) {
|
||||
$shortcodes = new NewsletterShortcodes($newsletter, $subscriber, $queue);
|
||||
return $shortcodes->replace($content, $content_source);
|
||||
}
|
||||
|
@@ -27,7 +27,7 @@ abstract class SimpleWorker implements CronWorkerInterface {
|
||||
/** @var CronWorkerScheduler */
|
||||
protected $cron_worker_scheduler;
|
||||
|
||||
function __construct() {
|
||||
public function __construct() {
|
||||
if (static::TASK_TYPE === null) {
|
||||
throw new \Exception('Constant TASK_TYPE is not defined on subclass ' . get_class($this));
|
||||
}
|
||||
@@ -37,34 +37,34 @@ abstract class SimpleWorker implements CronWorkerInterface {
|
||||
$this->cron_worker_scheduler = ContainerWrapper::getInstance()->get(CronWorkerScheduler::class);
|
||||
}
|
||||
|
||||
function getTaskType() {
|
||||
public function getTaskType() {
|
||||
return static::TASK_TYPE;
|
||||
}
|
||||
|
||||
function supportsMultipleInstances() {
|
||||
public function supportsMultipleInstances() {
|
||||
return static::SUPPORT_MULTIPLE_INSTANCES;
|
||||
}
|
||||
|
||||
function schedule() {
|
||||
public function schedule() {
|
||||
$this->cron_worker_scheduler->schedule(static::TASK_TYPE, $this->getNextRunDate());
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return true;
|
||||
}
|
||||
|
||||
function init() {
|
||||
public function init() {
|
||||
}
|
||||
|
||||
function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function prepareTaskStrategy(ScheduledTask $task, $timer) {
|
||||
return true;
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
return true;
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
// random day of the next week
|
||||
$date = Carbon::createFromTimestamp($this->wp->currentTime('timestamp'));
|
||||
$date->setISODate((int)$date->format('o'), ((int)$date->format('W')) + 1, mt_rand(1, 7));
|
||||
@@ -72,7 +72,7 @@ abstract class SimpleWorker implements CronWorkerInterface {
|
||||
return $date;
|
||||
}
|
||||
|
||||
function scheduleAutomatically() {
|
||||
public function scheduleAutomatically() {
|
||||
return static::AUTOMATIC_SCHEDULING;
|
||||
}
|
||||
|
||||
|
@@ -37,7 +37,7 @@ class AutomatedEmails extends SimpleWorker {
|
||||
/** @var NewsletterStatisticsRepository */
|
||||
private $newsletter_statistics_repository;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
Mailer $mailer,
|
||||
Renderer $renderer,
|
||||
SettingsController $settings,
|
||||
@@ -54,7 +54,7 @@ class AutomatedEmails extends SimpleWorker {
|
||||
$this->newsletter_statistics_repository = $newsletter_statistics_repository;
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
$settings = $this->settings->get(Worker::SETTINGS_KEY);
|
||||
if (!is_array($settings)) {
|
||||
return false;
|
||||
@@ -74,7 +74,7 @@ class AutomatedEmails extends SimpleWorker {
|
||||
return (bool)$settings['automated'];
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
try {
|
||||
$settings = $this->settings->get(Worker::SETTINGS_KEY);
|
||||
$newsletters = $this->getNewsletters();
|
||||
@@ -147,7 +147,7 @@ class AutomatedEmails extends SimpleWorker {
|
||||
return $context;
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
$wp = new WPFunctions;
|
||||
$date = Carbon::createFromTimestamp($wp->currentTime('timestamp'));
|
||||
return $date->endOfMonth()->next(Carbon::MONDAY)->midDay();
|
||||
|
@@ -31,7 +31,7 @@ class Scheduler {
|
||||
/** @var StatsNotificationsRepository */
|
||||
private $repository;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
SettingsController $settings,
|
||||
EntityManager $entity_manager,
|
||||
StatsNotificationsRepository $repository
|
||||
@@ -41,7 +41,7 @@ class Scheduler {
|
||||
$this->repository = $repository;
|
||||
}
|
||||
|
||||
function schedule(NewsletterEntity $newsletter) {
|
||||
public function schedule(NewsletterEntity $newsletter) {
|
||||
if (!$this->shouldSchedule($newsletter)) {
|
||||
return false;
|
||||
}
|
||||
|
@@ -60,7 +60,7 @@ class Worker {
|
||||
/** @var SubscribersRepository */
|
||||
private $subscribers_repository;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
Mailer $mailer,
|
||||
Renderer $renderer,
|
||||
SettingsController $settings,
|
||||
@@ -87,7 +87,7 @@ class Worker {
|
||||
}
|
||||
|
||||
/** @throws \Exception */
|
||||
function process($timer = false) {
|
||||
public function process($timer = false) {
|
||||
$timer = $timer ?: microtime(true);
|
||||
$settings = $this->settings->get(self::SETTINGS_KEY);
|
||||
foreach ($this->repository->findScheduled(Sending::RESULT_BATCH_SIZE) as $stats_notification_entity) {
|
||||
|
@@ -15,7 +15,7 @@ class SubscriberLinkTokens extends SimpleWorker {
|
||||
const BATCH_SIZE = 10000;
|
||||
const AUTOMATIC_SCHEDULING = false;
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$count = Subscriber::whereNull('link_token')->count();
|
||||
if ($count) {
|
||||
$auth_key = defined('AUTH_KEY') ? AUTH_KEY : '';
|
||||
@@ -28,7 +28,7 @@ class SubscriberLinkTokens extends SimpleWorker {
|
||||
return true;
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
$wp = new WPFunctions();
|
||||
return Carbon::createFromTimestamp($wp->currentTime('timestamp'));
|
||||
}
|
||||
|
@@ -15,7 +15,7 @@ class UnsubscribeTokens extends SimpleWorker {
|
||||
const BATCH_SIZE = 1000;
|
||||
const AUTOMATIC_SCHEDULING = false;
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$meta = $task->getMeta();
|
||||
do {
|
||||
$this->cron_helper->enforceExecutionLimit($timer);
|
||||
@@ -49,7 +49,7 @@ class UnsubscribeTokens extends SimpleWorker {
|
||||
return count($instances);
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
$wp = new WPFunctions;
|
||||
return Carbon::createFromTimestamp($wp->currentTime('timestamp'));
|
||||
}
|
||||
|
@@ -20,7 +20,7 @@ class WooCommercePastOrders extends SimpleWorker {
|
||||
/** @var WooCommercePurchases */
|
||||
private $woocommerce_purchases;
|
||||
|
||||
function __construct(
|
||||
public function __construct(
|
||||
WCHelper $woocommerce_helper,
|
||||
WooCommercePurchases $woocommerce_purchases
|
||||
) {
|
||||
@@ -29,11 +29,11 @@ class WooCommercePastOrders extends SimpleWorker {
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return $this->woocommerce_helper->isWooCommerceActive() && empty($this->getCompletedTasks()); // run only once
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$oldest_click = StatisticsClicks::orderByAsc('created_at')->limit(1)->findOne();
|
||||
if (!$oldest_click instanceof StatisticsClicks) {
|
||||
return true;
|
||||
@@ -70,7 +70,7 @@ class WooCommercePastOrders extends SimpleWorker {
|
||||
return false;
|
||||
}
|
||||
|
||||
function getNextRunDate() {
|
||||
public function getNextRunDate() {
|
||||
return Carbon::createFromTimestamp(WPFunctions::get()->currentTime('timestamp')); // schedule immediately
|
||||
}
|
||||
}
|
||||
|
@@ -18,17 +18,17 @@ class WooCommerceSync extends SimpleWorker {
|
||||
/** @var WooCommerceHelper */
|
||||
private $woocommerce_helper;
|
||||
|
||||
function __construct(WooCommerceSegment $woocommerce_segment, WooCommerceHelper $woocommerce_helper) {
|
||||
public function __construct(WooCommerceSegment $woocommerce_segment, WooCommerceHelper $woocommerce_helper) {
|
||||
$this->woocommerce_segment = $woocommerce_segment;
|
||||
$this->woocommerce_helper = $woocommerce_helper;
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
function checkProcessingRequirements() {
|
||||
public function checkProcessingRequirements() {
|
||||
return $this->woocommerce_helper->isWooCommerceActive();
|
||||
}
|
||||
|
||||
function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
public function processTaskStrategy(ScheduledTask $task, $timer) {
|
||||
$this->woocommerce_segment->synchronizeCustomers();
|
||||
return true;
|
||||
}
|
||||
|
@@ -22,82 +22,82 @@ class WorkersFactory {
|
||||
}
|
||||
|
||||
/** @return SchedulerWorker */
|
||||
function createScheduleWorker() {
|
||||
public function createScheduleWorker() {
|
||||
return $this->container->get(SchedulerWorker::class);
|
||||
}
|
||||
|
||||
/** @return SendingQueueWorker */
|
||||
function createQueueWorker() {
|
||||
public function createQueueWorker() {
|
||||
return $this->container->get(SendingQueueWorker::class);
|
||||
}
|
||||
|
||||
/** @return StatsNotificationsWorker */
|
||||
function createStatsNotificationsWorker() {
|
||||
public function createStatsNotificationsWorker() {
|
||||
return $this->container->get(StatsNotificationsWorker::class);
|
||||
}
|
||||
|
||||
/** @return StatsNotificationsWorkerForAutomatedEmails */
|
||||
function createStatsNotificationsWorkerForAutomatedEmails() {
|
||||
public function createStatsNotificationsWorkerForAutomatedEmails() {
|
||||
return $this->container->get(StatsNotificationsWorkerForAutomatedEmails::class);
|
||||
}
|
||||
|
||||
/** @return SendingServiceKeyCheckWorker */
|
||||
function createSendingServiceKeyCheckWorker() {
|
||||
public function createSendingServiceKeyCheckWorker() {
|
||||
return $this->container->get(SendingServiceKeyCheckWorker::class);
|
||||
}
|
||||
|
||||
/** @return PremiumKeyCheckWorker */
|
||||
function createPremiumKeyCheckWorker() {
|
||||
public function createPremiumKeyCheckWorker() {
|
||||
return $this->container->get(PremiumKeyCheckWorker::class);
|
||||
}
|
||||
|
||||
/** @return BounceWorker */
|
||||
function createBounceWorker() {
|
||||
public function createBounceWorker() {
|
||||
return $this->container->get(BounceWorker::class);
|
||||
}
|
||||
|
||||
/** @return MigrationWorker */
|
||||
function createMigrationWorker() {
|
||||
public function createMigrationWorker() {
|
||||
return $this->container->get(MigrationWorker::class);
|
||||
}
|
||||
|
||||
/** @return WooCommerceSyncWorker */
|
||||
function createWooCommerceSyncWorker() {
|
||||
public function createWooCommerceSyncWorker() {
|
||||
return $this->container->get(WooCommerceSyncWorker::class);
|
||||
}
|
||||
|
||||
/** @return ExportFilesCleanup */
|
||||
function createExportFilesCleanupWorker() {
|
||||
public function createExportFilesCleanupWorker() {
|
||||
return $this->container->get(ExportFilesCleanup::class);
|
||||
}
|
||||
|
||||
/** @return Beamer */
|
||||
function createBeamerkWorker() {
|
||||
public function createBeamerkWorker() {
|
||||
return $this->container->get(Beamer::class);
|
||||
}
|
||||
|
||||
/** @return InactiveSubscribers */
|
||||
function createInactiveSubscribersWorker() {
|
||||
public function createInactiveSubscribersWorker() {
|
||||
return $this->container->get(InactiveSubscribers::class);
|
||||
}
|
||||
|
||||
/** @return UnsubscribeTokens */
|
||||
function createUnsubscribeTokensWorker() {
|
||||
public function createUnsubscribeTokensWorker() {
|
||||
return $this->container->get(UnsubscribeTokens::class);
|
||||
}
|
||||
|
||||
/** @return SubscriberLinkTokens */
|
||||
function createSubscriberLinkTokensWorker() {
|
||||
public function createSubscriberLinkTokensWorker() {
|
||||
return $this->container->get(SubscriberLinkTokens::class);
|
||||
}
|
||||
|
||||
/** @return AuthorizedSendingEmailsCheck */
|
||||
function createAuthorizedSendingEmailsCheckWorker() {
|
||||
public function createAuthorizedSendingEmailsCheckWorker() {
|
||||
return $this->container->get(AuthorizedSendingEmailsCheck::class);
|
||||
}
|
||||
|
||||
/** @return WooCommercePastOrders */
|
||||
function createWooCommercePastOrdersWorker() {
|
||||
public function createWooCommercePastOrdersWorker() {
|
||||
return $this->container->get(WooCommercePastOrders::class);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user