Index: trunk/core/units/email_events/email_events_event_handler.php =================================================================== diff -u -r5248 -r5431 --- trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 5248) +++ trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 5431) @@ -120,10 +120,8 @@ $to_user_id = $event->getEventParam('EmailEventToUserId'); $email_event_type = $event->getEventParam('EmailEventType'); - - $this->Application->setUnitOption('emailmessages', 'AutoLoad', false); - $message_object = &$this->Application->recallObject('emailmessages'); - + + $message_object = &$this->Application->recallObject('emailmessages', null, Array('skip_autoload' => true)); $event_table = $this->Application->getUnitOption('emailevents', 'TableName'); $event_object = &$event->getObject(); @@ -154,23 +152,20 @@ $message_object->Load(array('EventId' => $event_id, 'LanguageId' => $this->Application->GetVar('m_lang'))); $message_type = $message_object->GetDBField('MessageType'); + $email_object = &$this->Application->recallObject('kEmailMessage'); + $email_object->Clear(); + // add footer: begin $sql = 'SELECT em.Template FROM '.$message_object->TableName.' em LEFT JOIN '.TABLE_PREFIX.'Events e ON e.EventId = em.EventId WHERE em.LanguageId = '.$message_object->GetDBField('LanguageId').' AND e.Event = "COMMON.FOOTER"'; $footer = explode("\n\n", $this->Conn->GetOne($sql)); - $footer = $message_object->GetDBField('MessageType') == 'text' ? strip_tags($footer[1]) : $footer[1]; + $footer = $message_object->GetDBField('MessageType') == 'text' ? $email_object->convertHTMLtoPlain($footer[1]) : $footer[1]; $message_template = $message_object->GetDBField('Template')."\r\n".$footer; // add footer: end - $email_object = &$this->Application->recallObject('kEmailMessage'); - $email_object->Clear(); - - $old_autoload = $this->Application->getUnitOption('u', 'AutoLoad'); - $this->Application->setUnitOption('u', 'AutoLoad', false); - - $from_user_object = &$this->Application->recallObject('u.-email'.$from_user_id); + $from_user_object = &$this->Application->recallObject('u.-email'.$from_user_id, null, Array('skip_autoload' => true)); $from_user_object->Load($from_user_id); // here if we don't have from_user loaded, it takes a default user from config values if ( $from_user_object->IsLoaded() ) { @@ -181,13 +176,11 @@ $from_user_email = $this->Application->ConfigValue('Smtp_AdminMailFrom'); } - $to_user_object = &$this->Application->recallObject('u.-email'.$to_user_id); + $to_user_object = &$this->Application->recallObject('u.-email'.$to_user_id, null, Array('skip_autoload' => true)); $to_user_object->Load($to_user_id); $to_user_email = $to_user_object->GetDBField('Email'); $to_user_name = trim($to_user_object->GetDBField('FirstName').' '.$to_user_object->GetDBField('LastName')); - $this->Application->setUnitOption('u', 'AutoLoad', $old_autoload); - if($direct_send_params){ $to_user_email = ( $direct_send_params['to_email'] ? $direct_send_params['to_email'] : $to_user_email ); $to_user_name = ( $direct_send_params['to_name'] ? $direct_send_params['to_name'] : $to_user_name );