public static
sendEmail
(mixed $from = '', mixed $fromName = '', mixed $recipient = '', mixed $subject = '', mixed $body = '', mixed $mode = false, mixed $cc = array(), mixed $bcc = array(), mixed $attachment = null, mixed $attachmentString = '', mixed $attachmentFilename = '', mixed $replyTo = null, mixed $replyToName = null)
public static function sendEmail($from = '', $fromName = '', $recipient = '', $subject = '', $body = '', $mode = false, $cc = array(), $bcc = array(), $attachment = null, $attachmentString = '', $attachmentFilename = '', $replyTo = null, $replyToName = null)
{
//public static function sendEmail($from = '', $fromName = '', $recipient, $subject, $body, $mode = false, $cc = array(), $bcc = array(), $attachment = null, $replyTo = null, $replyToName = null) {
$config = Factory::getConfig();
if ($from == '') {
$from = $config->get('mailfrom');
}
if ($fromName == '') {
$fromName = $config->get('fromname');
}
if ($replyTo == '') {
$replyTo = $from;
}
if ($replyToName == '') {
$replyToName = $fromName;
}
if ($cc == '') {
$cc = array();
}
if ($bcc == '') {
$bcc = array();
}
// REMOVE DUPLICITY EMAIL ADDRESS: recepient vs. cc vs. bcc
$dR = array(0 => $recipient);
$dCc = is_array($cc) ? $cc : array(0 => $cc);
$dBcc = is_array($bcc) ? $bcc : array(0 => $bcc);
if (!empty($dCc)) {
foreach ($dCc as $k => $v) {
if (in_array($v, $dR)) {
unset($dCc[$k]);
}
}
}
if (!empty($dBcc)) {
foreach ($dBcc as $k => $v) {
if (in_array($v, $dR)) {
unset($dBcc[$k]);
} else {
if (in_array($v, $dCc)) {
unset($dBcc[$k]);
}
}
}
}
// Set back cleaned arrays
$cc = $dCc;
$bcc = $dBcc;
// Attachment
/*if (!empty($tmpl['attachment'])) {
$i = 0;
foreach ($tmpl['attachment'] as $key => $value) {
if(isset($data['attachment'][$i]) && $data['attachment'][$i]) {
if (File::exists($tmpl['attachment_full'][$i])) {
$attachmentArray[] = $tmpl['attachment_full'][$i];
} else {
$warning[] = Text::_('COM_PHOCAEMAIL_ERROR_FILE_NOT_EXISTS').': '. $tmpl['attachment_full'][$i];
}
}
$i++;
}
}*/
$subject = html_entity_decode($subject, ENT_QUOTES);
$body = html_entity_decode($body, ENT_QUOTES);
$mail = PhocacartEmailFactory::getMailer();
$body = $body . PhocacartUtilsInfo::getInfo($mode);
$sendMail = $mail->sendMailA($from, $fromName, $recipient, $subject, $body, $mode, $cc, $bcc, $attachment, $attachmentString, $attachmentFilename, $replyTo, $replyToName);
if (is_object($sendMail) && $sendMail->getMessage()) {
PhocacartLog::add(2, 'Error sending email', 0, $sendMail->getMessage() . ', Mail From: ' . $from);
return false;
} else {
if (!$sendMail) {
PhocacartLog::add(2, 'Error sending email', 0, 'No error data set, Mail From: ' . $from);
return false;
} else {
return true;
}
}
}