Index: trunk/kernel/include/emailmessage.php =================================================================== diff -u -N -r5431 -r6093 --- trunk/kernel/include/emailmessage.php (.../emailmessage.php) (revision 5431) +++ trunk/kernel/include/emailmessage.php (.../emailmessage.php) (revision 6093) @@ -73,15 +73,16 @@ LEFT JOIN '.TABLE_PREFIX.'Events e ON e.EventId = em.EventId WHERE em.LanguageId = '.$this->Get('LanguageId').' AND e.Event = "COMMON.FOOTER"'; $footer = explode("\n\n", $this->Conn->GetOne($sql)); - + $email_object = &$this->Application->recallObject('kEmailMessage'); $email_object->Clear(); - - $footer = $this->Get('MessageType') == 'text' ? $email_object->convertHTMLtoPlain($footer[1]) : $footer[1]; - $template = $this->Get('Template'); //."\r\n".$footer; + $footer = $this->Get('MessageType') == 'text' ? $email_object->convertHTMLtoPlain($footer[1]) : '
'.$footer[1]; + + $template = $this->Get('Template')."\r\n".$footer; // add footer: end + $template = str_replace("\r", '', $template); $lines = explode("\n", $template); $header_end = false; $i = 0; @@ -104,10 +105,10 @@ $i++; } while ($ibody .= $lines[$i++]; + $this->body .= trim($lines[$i++])."\r\n"; } - - $this->body .= "\r".$footer; + +// $this->body .= "\r".$footer; $this->TemplateParsed = true; @@ -198,13 +199,13 @@ $charset = "ascii-us"; if($this->Get("MessageType")=="html") { - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset, $this->Get("Event"),NULL,$this->headers); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset, $this->Get("Event"),NULL,NULL,NULL,$this->headers); } else { - $body = nl2br($body); - $body = str_replace("
","\n",$body); - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,$this->headers); +// $body = nl2br($body); +// $body = str_replace("
","\n",$body); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,NULL,NULL,$this->headers); } /*$time = adodb_mktime(); @@ -258,12 +259,12 @@ if($this->Get("MessageType")=="html") { - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset, $this->Get("Event"),NULL,$this->headers); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset, $this->Get("Event"),NULL,NULL,NULL,$this->headers); } else { - $body = str_replace("\r", "", $body); - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,$this->headers); +// $body = str_replace("\r", "", $body); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,NULL,NULL,$this->headers); } /*$time = adodb_mktime(); @@ -304,12 +305,12 @@ $charset = "ascii-us"; if($this->Get("MessageType")=="html") { - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset,$this->Get("Event"),NULL,$this->headers); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,"",$body,$charset,$this->Get("Event"),NULL,NULL,NULL,$this->headers); } else { - $body = str_replace("\r", "", $body); - $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,$this->headers); +// $body = str_replace("\r", "", $body); + $objEmailQueue->SendMail($FromAddr,$FromName,$to_addr,$To,$subject,$body,"",$charset, $this->Get("Event"),NULL,NULL,NULL,$this->headers); } /* $time = adodb_mktime(); @@ -898,8 +899,7 @@ } } - function SendMail($From, $FromName, $ToAddr, $ToName, $Subject, $Text, $Html, $charset, $SendEvent, - $FileName="",$FileLoc="",$QueueOnly=0,$extra_headers = array()) + function SendMail($From, $FromName, $ToAddr, $ToName, $Subject, $Text, $Html, $charset, $SendEvent,$FileName="",$FileLoc="",$QueueOnly=0,$extra_headers = array()) { $HasFile = FALSE; $HasFile = (strlen($FileName)>0); @@ -924,6 +924,14 @@ $sql = "INSERT INTO ".GetTablePrefix()."EmailLog VALUES ('', ".$conn->qstr($FromName).", ".$conn->qstr($sendTo).", ".$conn->qstr( str_replace("Subject:", "", $Subject) ).", $time, '$SendEvent')"; $conn->Execute($sql); + if(is_array($extra_headers)) + { + foreach ($extra_headers as $h) + { + $headers .= $h."\n"; + } + } + $msg .="This is a multi-part message in MIME format."."\n"."\n"; if($HasFile) { @@ -935,13 +943,6 @@ else { $headers .= "Content-Type: multipart/alternative; boundary=\"$boundary\""."\n"; } - if(is_array($extra_headers)) - { - for($i=0;$iGetADODBConnection();