function sendEmail ($toEmail, $subject, $message, $isHtml = 'N', $mailHeader = '') {
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'toEmail=' . $toEmail . ',subject=' . $subject . ',isHtml=' . $isHtml);
- // Compile subject line (for POINTS constant etc.)
- eval('$subject = decodeEntities("' . compileRawCode(escapeQuotes($subject)) . '");');
-
// Set from header
if ((!isInStringIgnoreCase('@', $toEmail)) && ($toEmail > 0)) {
// Value detected, is the message extension installed?
}
// Send out a raw email with PHPMailer class or legacy mail() command
-function sendRawEmail ($toEmail, $subject, $message, $from) {
- // Just compile all again, to put out all configs, etc.
- eval('$toEmail = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($toEmail)), false) . '");');
- eval('$subject = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($subject)), false) . '");');
- eval('$message = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($message)), false) . '");');
- eval('$from = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($from)) , false) . '");');
+function sendRawEmail ($toEmail, $subject, $message, $headers) {
+ // Just compile all to put out all configs, etc.
+ $eval = '$toEmail = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($toEmail)), false) . '"); ';
+ $eval .= '$subject = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($subject)), false) . '"); ';
+ $eval .= '$headers = decodeEntities("' . doFinalCompilation(compileRawCode(escapeQuotes($headers)), false) . '"); ';
+
+ // Do not decode entities in the message because we also send HTML mails through this function
+ $eval .= '$message = "' . doFinalCompilation(compileRawCode(escapeQuotes($message)), false) . '";';
+
+ // Run the final eval() command
+ eval($eval);
// Shall we use PHPMailer class or legacy mode?
if (checkPhpMailerUsage()) {
$mail->Port = 25;
$mail->Username = getConfig('SMTP_USER');
$mail->Password = getConfig('SMTP_PASSWORD');
- if (empty($from)) {
+ if (empty($headers)) {
$mail->From = getConfig('WEBMASTER');
} else {
- $mail->From = $from;
+ $mail->From = $headers;
}
$mail->FromName = getMainTitle();
$mail->Subject = $subject;
} else {
$mail->Body = decodeEntities($message);
}
+
$mail->AddAddress($toEmail, '');
$mail->AddReplyTo(getConfig('WEBMASTER'), getMainTitle());
$mail->AddCustomHeader('Errors-To:' . getConfig('WEBMASTER'));
$mail->AddCustomHeader('X-Loop:' . getConfig('WEBMASTER'));
+ $mail->AddCustomHeader('Bounces-To:' . getConfig('WEBMASTER'));
$mail->Send();
// Has an error occured?
}
} else {
// Use legacy mail() command
- return mail($toEmail, $subject, decodeEntities($message), $from);
+ return mail($toEmail, $subject, decodeEntities($message), $headers);
}
}
} // END - if
// Three different ways to debug...
- //* DEBUG: */ debug_report_bug(__FUNCTION__, __LINE__, sprintf("%s[%s:] URL=%s", __FUNCTION__, __LINE__, $URL));
+ //* DEBUG: */ debug_report_bug(__FUNCTION__, __LINE__, 'URL=' . $URL);
//* DEBUG: */ logDebugMessage(__FUNCTION__, __LINE__, 'URL=' . $URL);
//* DEBUG: */ die($URL);
foreach($data as $k => $v) {
if ($v > 0) {
// Value is greater than 0 "eval" data to return string
- eval('$ret .= ", ".$v." {--_' . strtoupper($k) . '--}";');
+ $ret .= ', ' . $v . ' {--_' . strtoupper($k) . '--}';
break;
} // END - if
} // END - foreach