/** * Sending multiple email reminders. * Call in EmainReminder and use original EmailRemainder class for sending. * * @param EmailReminder $emailReminder Caller EmailReminder * @param Administration $admin Administration module for EmailRemainder->sendReminders() function * @param boolean $checkDecline (optional) Send email if user accept status is not decline. Default is TRUE. */ public static function sendEmailReminders(EmailReminder $emailReminder, Administration $admin, $checkDecline = true) { if ($reminders = self::getUnsentEmailReminders()) { foreach ($reminders as $reminderId => $reminder) { $recipients = self::getEmailReminderInviteesRecipients($reminderId, $checkDecline); $eventBean = BeanFactory::getBean($reminder->related_event_module, $reminder->related_event_module_id); if ($eventBean && $emailReminder->sendReminders($eventBean, $admin, $recipients)) { $reminder->email_sent = 1; $reminder->save(); } } } }
/** * Job 12 */ function sendEmailReminders() { Log::info('----->Scheduler fired job of type sendEmailReminders()'); require_once "modules/Activities/EmailReminder.php"; $reminder = new EmailReminder(); return $reminder->process(); }
function testEmailReminder() { $meeting = new Meeting(); $meeting->email_reminder_time = "20"; $meeting->name = 'Test Email Reminder'; $meeting->status = "Planned"; $meeting->date_start = $GLOBALS['timedate']->nowDb(); $meeting->save(); require_once "modules/Activities/EmailReminder.php"; $er = new EmailReminder(); $to_remind = $er->getMeetingsForRemind(); $this->assertTrue(in_array($meeting->id, $to_remind)); $GLOBALS['db']->query("DELETE FROM meetings WHERE id = '{$meeting->id}'"); }