public function SendEmailToContact($template_name, $recipient_contact_id, $data) { //init email info $template = $this->m_Tempaltes[$template_name]["TEMPLATE"]; $subject = $this->m_Tempaltes[$template_name]["TITLE"]; $sender = $this->m_Tempaltes[$template_name]["EMAILACCOUNT"]; //render the email tempalte $data['app_index'] = APP_INDEX; $data['app_url'] = APP_URL; $data['operator_name'] = BizSystem::GetProfileName($data['create_by']); $data['operator_email'] = BizSystem::GetProfileEmail($data['create_by']); $data['refer_url'] = SITE_URL; //prepare recipient info $userObj = BizSystem::getObject("contact.do.ContactSystemDO"); $userData = $userObj->directFetch("[Id]='" . $recipient_contact_id . "'", 1); if (!count($data)) { return false; } $userData = $userData[0]; $recipient['email'] = $userData['email']; $recipient['name'] = $userData['display_name']; $data['contact_display_name'] = $userData['display_name']; $tplFile = BizSystem::getTplFileWithPath($template, "email"); $content = $this->renderEmail($data, $tplFile); if ($userData['email'] == '') { //if no email address , then do nothing return; } //send it to the queue $result = $this->sendEmail($sender, $recipient, $subject, $content); return $result; }