Index: trunk/core/units/email_events/email_events_event_handler.php
===================================================================
diff -u -N -r3145 -r3391
--- trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 3145)
+++ trunk/core/units/email_events/email_events_event_handler.php (.../email_events_event_handler.php) (revision 3391)
@@ -72,7 +72,7 @@
{
trigger_error('Invalid email event name '.$email_event.'. Use only UPPERCASE characters and dots as email event names', E_USER_ERROR);
}
-
+
$to_user_id = $event->getEventParam('EmailEventToUserId');
$email_event_type = $event->getEventParam('EmailEventType');
@@ -119,8 +119,13 @@
$from_user_object = &$this->Application->recallObject('u.-email'.$from_user_id);
$from_user_object->Load($from_user_id);
// here if we don't have from_user loaded, it takes a default user from config values
- $from_user_email = $from_user_object->GetDBField('Email') ? $from_user_object->GetDBField('Email') : $this->Application->ConfigValue('Smtp_AdminMailFrom');
- $from_user_name = trim($from_user_object->GetDBField('FirstName').' '.$from_user_object->GetDBField('LastName'));
+ if ( $from_user_object->IsLoaded() ) {
+ $from_user_email = $from_user_object->GetDBField('Email');
+ $from_user_name = trim($from_user_object->GetDBField('FirstName').' '.$from_user_object->GetDBField('LastName'));
+ }
+ else {
+ $from_user_email = $this->Application->ConfigValue('Smtp_AdminMailFrom');
+ }
$to_user_object = &$this->Application->recallObject('u.-email'.$to_user_id);
$to_user_object->Load($to_user_id);
@@ -130,10 +135,10 @@
$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);
- $from_user_email = ($direct_send_params['from_email']?$direct_send_params['from_email']:$from_user_email);
- $from_user_name = ($direct_send_params['from_name']?$direct_send_params['from_name']:$from_user_name);
+ $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 );
+ $from_user_email = ( $direct_send_params['from_email'] ? $direct_send_params['from_email'] : $from_user_email);
+ $from_user_name = ( $direct_send_params['from_name'] ? $direct_send_params['from_name'] : $from_user_name );
$message_body_additional = $direct_send_params['message'];
}
@@ -197,12 +202,12 @@
$event->status=erFAIL;
}
}
-
+
if ($event->status == erSUCCESS){
if (!$from_user_name) {
$from_user_name = strip_tags( $this->Application->ConfigValue('Site_Name') );
}
- $sql = 'INSERT INTO '.TABLE_PREFIX.'EmailLog SET
+ $sql = 'INSERT INTO '.TABLE_PREFIX.'EmailLog SET
fromuser = '.$this->Conn->qstr($from_user_name.' ('.$from_user_email.')').',
addressto = '.$this->Conn->qstr($to_user_name.' ('.$to_user_email.')').',
subject = '.$this->Conn->qstr($email_object->Subject).',