Remove inactivity offset for abandoned cart emails

[PREMIUM-121]
This commit is contained in:
Jan Jakeš
2019-07-17 16:02:52 +02:00
committed by M. Shull
parent 8882b322ca
commit 430c6a0520

View File

@@ -83,7 +83,7 @@ class Scheduler {
}
}
static function scheduleOrRescheduleAutomaticEmail($group, $event, $subscriber_id, $meta = false, $time_offset = 0) {
static function scheduleOrRescheduleAutomaticEmail($group, $event, $subscriber_id, $meta = false) {
$newsletters = self::getNewsletters(Newsletter::TYPE_AUTOMATIC, $group);
if (empty($newsletters)) {
return false;
@@ -97,14 +97,14 @@ class Scheduler {
// try to find existing scheduled task for given subscriber
$task = ScheduledTask::findOneScheduledByNewsletterIdAndSubscriberId($newsletter->id, $subscriber_id);
if ($task) {
self::rescheduleAutomaticEmailSendingTask($newsletter, $task, $time_offset);
self::rescheduleAutomaticEmailSendingTask($newsletter, $task);
} else {
self::createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta, $time_offset);
self::createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta);
}
}
}
static function rescheduleAutomaticEmail($group, $event, $subscriber_id, $time_offset = 0) {
static function rescheduleAutomaticEmail($group, $event, $subscriber_id) {
$newsletters = self::getNewsletters(Newsletter::TYPE_AUTOMATIC, $group);
if (empty($newsletters)) {
return false;
@@ -118,7 +118,7 @@ class Scheduler {
// try to find existing scheduled task for given subscriber
$task = ScheduledTask::findOneScheduledByNewsletterIdAndSubscriberId($newsletter->id, $subscriber_id);
if ($task) {
self::rescheduleAutomaticEmailSendingTask($newsletter, $task, $time_offset);
self::rescheduleAutomaticEmailSendingTask($newsletter, $task);
}
}
}
@@ -190,7 +190,7 @@ class Scheduler {
return $sending_task->save();
}
static function createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta, $time_offset = 0) {
static function createAutomaticEmailSendingTask($newsletter, $subscriber_id, $meta) {
$sending_task = SendingTask::create();
$sending_task->newsletter_id = $newsletter->id;
if ($newsletter->sendTo === 'user' && $subscriber_id) {
@@ -202,17 +202,13 @@ class Scheduler {
$sending_task->status = SendingQueue::STATUS_SCHEDULED;
$sending_task->priority = SendingQueue::PRIORITY_MEDIUM;
$scheduled_at = self::getScheduledTimeWithDelay($newsletter->afterTimeType, $newsletter->afterTimeNumber);
$scheduled_at->addSeconds($time_offset);
$sending_task->scheduled_at = $scheduled_at;
$sending_task->scheduled_at = self::getScheduledTimeWithDelay($newsletter->afterTimeType, $newsletter->afterTimeNumber);
return $sending_task->save();
}
static function rescheduleAutomaticEmailSendingTask($newsletter, $task, $time_offset = 0) {
static function rescheduleAutomaticEmailSendingTask($newsletter, $task) {
// compute new 'scheduled_at' from now
$scheduled_at = self::getScheduledTimeWithDelay($newsletter->afterTimeType, $newsletter->afterTimeNumber);
$scheduled_at->addSeconds($time_offset);
$task->scheduled_at = $scheduled_at;
$task->scheduled_at = self::getScheduledTimeWithDelay($newsletter->afterTimeType, $newsletter->afterTimeNumber);
$task->save();
}