public static function do_job() { //error_log("******* in the chronos ********"); $job_batch = get_option("rm_option_jobman_job", null); if ($job_batch == null) { return; } //echo "<br>Batch:<br>"; //return; //self::log_var_dump($job_batch); $gopts = new RM_Options(); $from_email = $gopts->get_value_of('senders_email_formatted'); $header = "From: {$from_email}\r\n"; $header .= "MIME-Version: 1.0\r\n"; $header .= "Content-Type: text/html; charset=utf-8\r\n"; foreach ($job_batch as $key => $job) { $results = RM_DBManager::get_submissions_for_form($job->form_id, $job->job_size, $job->offset); //echo "<br>in foreach:<br>"; //var_dump($results); if ($results != false) { foreach ($results as $result) { //error_log("Doing a job, email: " . $result->user_email); $sub_values = maybe_unserialize($result->data); $processed_msg = $job->mail_packet['message']; foreach ($job->form_fields as $field_placeholder) { $abab = explode("_", $field_placeholder); $field_id = $abab[1]; if (isset($sub_values[$field_id])) { if (is_array($sub_values[$field_id]->value)) { $sub_values[$field_id]->value = implode(",", $sub_values[$field_id]->value); } $processed_msg = str_replace("{{" . $field_placeholder . "}}", $sub_values[$field_id]->value, $processed_msg); } } $cron_mail = new stdClass(); $cron_mail->to = $result->user_email; $cron_mail->header = $header; $cron_mail->message = wpautop($processed_msg); $cron_mail->subject = $job->mail_packet['subject']; $cron_mail->attachments = array(); RM_Utilities::send_mail($cron_mail); //wp_mail($result->user_email, //$job->mail_packet['subject'] , //$processed_msg, //$header); } $job_batch[$key]->offset += count($results); //$job->job_size; if ($job->callback !== null) { $job->callback(true); } } if ($job_batch[$key]->offset >= $job_batch[$key]->total) { unset($job_batch[$key]); } } update_option("rm_option_jobman_job", $job_batch); }