Updates method names

This commit is contained in:
Vlad
2018-05-19 17:00:31 -04:00
parent 9aa796681a
commit 4611a7ea74
2 changed files with 56 additions and 57 deletions

View File

@ -30,7 +30,7 @@ class Scheduler {
->where('post_id', $post_id)
->findOne();
if($post === false) {
self::createPostNotificationQueue($newsletter);
self::createPostNotificationSendingTask($newsletter);
}
}
}
@ -42,7 +42,7 @@ class Scheduler {
if($newsletter->event === 'segment' &&
in_array($newsletter->segment, $segments)
) {
self::createWelcomeNotificationQueue($newsletter, $subscriber_id);
self::createWelcomeNotificationSendingTask($newsletter, $subscriber_id);
}
}
}
@ -53,7 +53,7 @@ class Scheduler {
foreach($newsletters as $newsletter) {
if($newsletter->event !== $event) continue;
if(is_callable($scheduling_condition) && !$scheduling_condition($newsletter)) continue;
self::createAutomaticEmailQueue($newsletter, $subscriber_id, $meta);
self::createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta);
}
}
@ -79,49 +79,49 @@ class Scheduler {
if($newsletter->role === self::WORDPRESS_ALL_ROLES ||
in_array($newsletter->role, $wp_user['roles'])
) {
self::createWelcomeNotificationQueue($newsletter, $subscriber_id);
self::createWelcomeNotificationSendingTask($newsletter, $subscriber_id);
}
}
}
}
static function createWelcomeNotificationQueue($newsletter, $subscriber_id) {
static function createWelcomeNotificationSendingTask($newsletter, $subscriber_id) {
$previously_scheduled_notification = SendingQueue::joinWithSubscribers()
->where('queues.newsletter_id', $newsletter->id)
->where('subscribers.subscriber_id', $subscriber_id)
->findOne();
if(!empty($previously_scheduled_notification)) return;
$queue = SendingTask::create();
$queue->newsletter_id = $newsletter->id;
$queue->setSubscribers(array($subscriber_id));
$queue->status = SendingQueue::STATUS_SCHEDULED;
$queue->priority = SendingQueue::PRIORITY_HIGH;
$queue->scheduled_at = self::getScheduledTimeForWelcomeNotificationOrAutomaticEmail(
$sending_task = SendingTask::create();
$sending_task->newsletter_id = $newsletter->id;
$sending_task->setSubscribers(array($subscriber_id));
$sending_task->status = SendingQueue::STATUS_SCHEDULED;
$sending_task->priority = SendingQueue::PRIORITY_HIGH;
$sending_task->scheduled_at = self::getScheduledTimeWithDelay(
$newsletter->afterTimeType,
$newsletter->afterTimeNumber
);
return $queue->save();
return $sending_task->save();
}
static function createAutomaticEmailQueue($newsletter, $subscriber_id, $meta) {
$queue = SendingTask::create();
$queue->newsletter_id = $newsletter->id;
static function createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta) {
$sending_task = SendingTask::create();
$sending_task->newsletter_id = $newsletter->id;
if($newsletter->sendTo === 'user' && $subscriber_id) {
$queue->setSubscribers(array($subscriber_id));
$sending_task->setSubscribers(array($subscriber_id));
}
if($meta) {
$queue->__set('meta', $meta);
$sending_task->__set('meta', $meta);
}
$queue->status = SendingQueue::STATUS_SCHEDULED;
$queue->priority = SendingQueue::PRIORITY_MEDIUM;
$queue->scheduled_at = self::getScheduledTimeForWelcomeNotificationOrAutomaticEmail(
$sending_task->status = SendingQueue::STATUS_SCHEDULED;
$sending_task->priority = SendingQueue::PRIORITY_MEDIUM;
$sending_task->scheduled_at = self::getScheduledTimeWithDelay(
$newsletter->afterTimeType,
$newsletter->afterTimeNumber
);
return $queue->save();
return $sending_task->save();
}
static function createPostNotificationQueue($newsletter) {
static function createPostNotificationSendingTask($newsletter) {
$existing_notification_history = Newsletter::where('parent_id', $newsletter->id)
->where('type', Newsletter::TYPE_NOTIFICATION_HISTORY)
->where('status', Newsletter::STATUS_SENDING)
@ -129,7 +129,6 @@ class Scheduler {
if($existing_notification_history) {
return;
}
$next_run_date = self::getNextRunDate($newsletter->schedule);
if(!$next_run_date) return;
// do not schedule duplicate queues for the same time
@ -137,12 +136,12 @@ class Scheduler {
->where('tasks.scheduled_at', $next_run_date)
->findOne();
if($existing_queue) return;
$queue = SendingTask::create();
$queue->newsletter_id = $newsletter->id;
$queue->status = SendingQueue::STATUS_SCHEDULED;
$queue->scheduled_at = $next_run_date;
$queue->save();
return $queue;
$sending_task = SendingTask::create();
$sending_task->newsletter_id = $newsletter->id;
$sending_task->status = SendingQueue::STATUS_SCHEDULED;
$sending_task->scheduled_at = $next_run_date;
$sending_task->save();
return $sending_task;
}
static function processPostNotificationSchedule($newsletter) {
@ -209,19 +208,7 @@ class Scheduler {
return $previous_run_date;
}
static function getNewsletters($type, $group = false) {
return Newsletter::getPublished()
->filter('filterType', $type, $group)
->filter('filterStatus', Newsletter::STATUS_ACTIVE)
->filter('filterWithOptions')
->findMany();
}
static function formatDatetimeString($datetime_string) {
return Carbon::parse($datetime_string)->format('Y-m-d H:i:s');
}
static function getScheduledTimeForWelcomeNotificationOrAutomaticEmail($after_time_type, $after_time_number) {
static function getScheduledTimeWithDelay($after_time_type, $after_time_number) {
$current_time = Carbon::createFromTimestamp(WPFunctions::currentTime('timestamp'));
switch($after_time_type) {
case 'hours':
@ -234,4 +221,16 @@ class Scheduler {
return $current_time;
}
}
static function getNewsletters($type, $group = false) {
return Newsletter::getPublished()
->filter('filterType', $type, $group)
->filter('filterStatus', Newsletter::STATUS_ACTIVE)
->filter('filterWithOptions')
->findMany();
}
static function formatDatetimeString($datetime_string) {
return Carbon::parse($datetime_string)->format('Y-m-d H:i:s');
}
}