static function SendEmail($senderAddress, $senderName, $replyToAddress, $recipientAddress, $subject, $content, $contentType = "text/plain") { //save to db $email = new Email(); $email->simpleSave(Application::PARTNER_CODE, $senderAddress, $senderName, $recipientAddress, null, $subject, 'en', $contentType, $content); //queue $queueMessage = json_encode(array('emailId' => $email->getId())); $email->addEvent(EmailEventType::QUEUED); //this has to happen before actually placing on the queue //because the email must be flagged as queued to be processed $mq = MessageQueue::GetInstance(MessageQueue::LOCAL); $mq->send(MessageQueue::EMAIL_QUEUE, $queueMessage); return $email->getId(); /* //set addresses if (!is_null($senderName)) { $senderAddress = $senderName.' <'.$senderAddress.'>'; } //build headers $headers = ''; $headers .= 'From: '.$senderAddress."\n"; if (!is_null($replyToAddress)) { $headers .= 'Reply-To: '.$replyToAddress."\n"; } $headers .= 'X-Mailer: PHP/' . phpversion()."\n"; $headers .= 'Content-Type: '.$contentType.'; charset=UTF-8'."\n"; //send if (mail($recipientAddress, $subject, $content, $headers)) { $email->addEvent(EmailEventType::SENT); } else { $email->addEvent(EmailEventType::FAILED); } $email->save(); */ }