/** * Sends the queued up messages to their destinations. This can either try * to send emails that couldn't be sent before (status = 'error'), or just * emails just recently queued (status = 'pending'). * * @access public * @param string $status The status of the messages that need to be sent * @param integer $limit The limit of emails that we should send at one time */ function send($status, $limit) { // get list of emails to send $emails = Mail_Queue::_getList($status, $limit); // foreach email for ($i = 0; $i < count($emails); $i++) { $result = Mail_Queue::_sendEmail($emails[$i]['recipient'], $emails[$i]['headers'], $emails[$i]['body']); if (PEAR::isError($result)) { Mail_Queue::_saveLog($emails[$i]['id'], 'error', Mail_Queue::_getErrorMessage($result)); } else { Mail_Queue::_saveLog($emails[$i]['id'], 'sent', ''); if ($emails[$i]['save_copy']) { // send a copy of this email to eventum_sent@ Mail_API::saveEmailInformation($emails[$i]); } } } }