Skip to content

Commit 0656b8f

Browse files
authored
Merge pull request creativecommons#401 from creativecommons/check-cronjobs
fix update details WordPresscron jobs
2 parents 21b3411 + 33d0289 commit 0656b8f

File tree

1 file changed

+31
-18
lines changed

1 file changed

+31
-18
lines changed

plugins/cc-global-network/cron/email-update-details-reminders.php

+31-18
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,28 @@ function ccgn_close_update_details_applicant($applicant_id)
3939
$delete = wp_delete_user($applicant_id);
4040
}
4141

42+
function ccgn_update_details_set_first_reminder( $applicant_id ) {
43+
ccgn_registration_email_update_details_first_reminder($applicant_id);
44+
$update_details_meta = array(
45+
'state' => 'first-reminder',
46+
'updated' => 0,
47+
'date' => date('Y-m-d H:i:s', strtotime('now')),
48+
'done' => true
49+
);
50+
update_user_meta( $applicant_id, 'ccgn_applicant_update_details_state', $update_details_meta );
51+
}
52+
53+
function ccgn_update_details_set_second_reminder( $applicant_id ) {
54+
ccgn_registration_email_update_details_second_reminder($applicant_id);
55+
$update_details_meta = array(
56+
'state' => 'second-reminder',
57+
'updated' => 0,
58+
'date' => date('Y-m-d H:i:s', strtotime('now')),
59+
'done' => true
60+
);
61+
update_user_meta($applicant_id, 'ccgn_applicant_update_details_state', $update_details_meta);
62+
}
63+
4264
// Send reminders to those that need them
4365

4466
function ccgn_email_update_details_reminders()
@@ -49,10 +71,15 @@ function ccgn_email_update_details_reminders()
4971
);
5072
foreach ($applicants as $applicant_id) {
5173
$status = get_user_meta($applicant_id, 'ccgn_applicant_update_details_state', true);
52-
$days_in_state = ccgn_days_since_state_set($applicant_id, $now);
74+
$state_date = new DateTime($status['date']);
75+
$days_in_state = $state_date->diff($now)->days;
5376
if ($days_in_state > CCGN_CLOSE_UPDATE_DETAILS_AFTER_DAYS) {
5477
if ( ($status['state'] == 'second-reminder') && ($status['done']) ) {
5578
ccgn_close_update_details_applicant($applicant_id);
79+
} elseif ( $status['state'] == 'none' ) {
80+
ccgn_update_details_set_first_reminder($applicant_id);
81+
} elseif ( $status['state'] == 'first-reminder' ) {
82+
ccgn_update_details_set_second_reminder($applicant_id);
5683
} else {
5784
//update user status date
5885
update_user_meta(
@@ -64,26 +91,12 @@ function ccgn_email_update_details_reminders()
6491
} elseif ( ($days_in_state > CCGN_FIRST_REMINDER_UPDATE_DETAILS_AFTER_DAYS) && ($days_in_state <= CCGN_SECOND_REMINDER_UPDATE_DETAILS_AFTER_DAYS) ) {
6592
// Send first reminder
6693
if (empty($status['state'])) {
67-
ccgn_registration_email_update_details_first_reminder($applicant_id);
68-
$update_details_meta = array(
69-
'state' => 'first-reminder',
70-
'updated' => 0,
71-
'date' => date('Y-m-d H:i:s', strtotime('now')),
72-
'done' => true
73-
);
74-
update_user_meta( $applicant_id, 'ccgn_applicant_update_details_state', $update_details_meta );
94+
ccgn_update_details_set_first_reminder($applicant_id);
7595
}
7696
} elseif ( ($days_in_state > CCGN_SECOND_REMINDER_UPDATE_DETAILS_AFTER_DAYS) && ($days_in_state <= CCGN_CLOSE_UPDATE_DETAILS_AFTER_DAYS) ) {
7797
// Send second reminder
7898
if (($status['state'] == 'first-reminer') && ($status['done'])) {
79-
ccgn_registration_email_update_details_second_reminder($applicant_id);
80-
$update_details_meta = array(
81-
'state' => 'second-reminder',
82-
'updated' => 0,
83-
'date' => date('Y-m-d H:i:s', strtotime('now')),
84-
'done' => true
85-
);
86-
update_user_meta($applicant_id, 'ccgn_applicant_update_details_state', $update_details_meta);
99+
ccgn_update_details_set_second_reminder($applicant_id);
87100
}
88101
}
89102
}
@@ -103,4 +116,4 @@ function ccgn_schedule_email_upate_details_reminders()
103116
function ccgn_schedule_remove_email_update_details_reminders()
104117
{
105118
wp_clear_scheduled_hook('ccgn_email_update_details_reminders_event');
106-
}
119+
}

0 commit comments

Comments
 (0)