Index: trunk/kernel/units/email_events/email_events_event_handler.php =================================================================== diff -u -r1566 -r1732 --- trunk/kernel/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 1566) +++ trunk/kernel/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 1732) @@ -102,15 +102,7 @@ $message_object->Load(array('EventId' => $event_id, 'LanguageId' => $this->Application->GetVar('m_lang'))); $message_type = $message_object->GetDBField('MessageType'); $message_template = $message_object->GetDBField('Template'); - - $this->Application->InitParser(); - $template =& $this->Application->makeClass('Template'); - $template->SetBody($message_template); - $template_object = &$this->Application->recallObject('TemplatesCache'); - $template_object->SetTemplate('EmailTemplate', $template); - - $email_object = &$this->Application->recallObject('kEmailMessage'); $old_autoload = $this->Application->getUnitOption('u', 'AutoLoad'); @@ -136,10 +128,16 @@ $from_user_name = ($direct_send_params['from_name']?$direct_send_params['from_name']:$from_user_name); $message_body_additional = $direct_send_params['message']; } - - $params = array_merge( array('name'=>'EmailTemplate', 'message_text'=>$message_body_additional), $direct_send_params ); - $message_template = $this->Application->ParseBlock($params); - + + + $this->Application->makeClass('Template'); + $this->Application->InitParser(); + $parser_params = $this->Application->Parser->Params; + $direct_send_params['message_text'] = $message_body_additional; + $this->Application->Parser->Params = array_merge_recursive2($this->Application->Parser->Params, $direct_send_params); + $message_template = $this->Application->Parser->Parse($message_template, '', 0); + $this->Application->Parser->Params = $parser_params; + $message_template = str_replace("\r", "", $message_template); list($message_headers, $message_body) = explode("\n\n", $message_template, 2); Index: trunk/core/units/email_events/email_events_event_handler.php =================================================================== diff -u -r1566 -r1732 --- trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 1566) +++ trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 1732) @@ -102,15 +102,7 @@ $message_object->Load(array('EventId' => $event_id, 'LanguageId' => $this->Application->GetVar('m_lang'))); $message_type = $message_object->GetDBField('MessageType'); $message_template = $message_object->GetDBField('Template'); - - $this->Application->InitParser(); - $template =& $this->Application->makeClass('Template'); - $template->SetBody($message_template); - $template_object = &$this->Application->recallObject('TemplatesCache'); - $template_object->SetTemplate('EmailTemplate', $template); - - $email_object = &$this->Application->recallObject('kEmailMessage'); $old_autoload = $this->Application->getUnitOption('u', 'AutoLoad'); @@ -136,10 +128,16 @@ $from_user_name = ($direct_send_params['from_name']?$direct_send_params['from_name']:$from_user_name); $message_body_additional = $direct_send_params['message']; } - - $params = array_merge( array('name'=>'EmailTemplate', 'message_text'=>$message_body_additional), $direct_send_params ); - $message_template = $this->Application->ParseBlock($params); - + + + $this->Application->makeClass('Template'); + $this->Application->InitParser(); + $parser_params = $this->Application->Parser->Params; + $direct_send_params['message_text'] = $message_body_additional; + $this->Application->Parser->Params = array_merge_recursive2($this->Application->Parser->Params, $direct_send_params); + $message_template = $this->Application->Parser->Parse($message_template, '', 0); + $this->Application->Parser->Params = $parser_params; + $message_template = str_replace("\r", "", $message_template); list($message_headers, $message_body) = explode("\n\n", $message_template, 2);