- Saves welcome emails with high priority

- Fixes welcome emails not being sent to WP users
- Updates unit tests
This commit is contained in:
Vlad
2016-11-28 12:05:21 -05:00
parent e72a8efbd4
commit 5bc17f5e76
3 changed files with 16 additions and 10 deletions

View File

@@ -53,10 +53,10 @@ class Scheduler {
if(empty($newsletters)) return false;
foreach($newsletters as $newsletter) {
if($newsletter->event === 'user') {
if($old_user_data) {
if(!empty($old_user_data['roles'])) {
// do not schedule welcome newsletter if roles have not changed
$old_role = (array)$old_user_data->roles;
$new_role = (array)$wp_user->roles;
$old_role = $old_user_data['roles'];
$new_role = $wp_user['roles'];
if($newsletter->role === self::WORDPRESS_ALL_ROLES ||
!array_diff($old_role, $new_role)
) {
@@ -64,7 +64,7 @@ class Scheduler {
}
}
if($newsletter->role === self::WORDPRESS_ALL_ROLES ||
in_array($newsletter->role, (array)$wp_user->roles)
in_array($newsletter->role, $wp_user['roles'])
) {
self::createWelcomeNotificationQueue($newsletter, $subscriber_id);
}
@@ -99,6 +99,7 @@ class Scheduler {
$scheduled_at = $current_time;
}
$queue->status = SendingQueue::STATUS_SCHEDULED;
$queue->priority = SendingQueue::PRIORITY_HIGH;
$queue->scheduled_at = $scheduled_at;
return $queue->save();
}