Index: branches/5.2.x/units/private_messages/private_message_eh.php =================================================================== diff -u -N -r14252 -r14624 --- branches/5.2.x/units/private_messages/private_message_eh.php (.../private_message_eh.php) (revision 14252) +++ branches/5.2.x/units/private_messages/private_message_eh.php (.../private_message_eh.php) (revision 14624) @@ -1,6 +1,6 @@ Application->GetVar('folder_id'); if ($folder_id === false) { @@ -58,13 +61,17 @@ * Puts message to Sent folder * * @param kEvent $event + * @return void + * @access protected */ - function OnBeforeItemCreate(&$event) + protected function OnBeforeItemCreate(&$event) { + parent::OnBeforeItemCreate($event); + $object =& $event->getObject(); /* @var $object kDBItem */ - if ($object->GetDBField('FolderId') != PM_FOLDER_SENT) { + if ( $object->GetDBField('FolderId') != PM_FOLDER_SENT ) { // when creating "Inbox" message (from "Sent" message) don't reset folder & status return ; } @@ -79,8 +86,10 @@ * Creates 1st post when topic is created * * @param kEvent $event + * @return void + * @access protected */ - function OnAfterItemCreate(&$event) + protected function OnAfterItemCreate(&$event) { parent::OnAfterItemCreate($event); @@ -89,22 +98,22 @@ $this->Application->EmailEventUser('PM.ADD', $object->GetDBField('ToId')); - if ($object->GetDBField('FolderId') != PM_FOLDER_SENT) { + if ( $object->GetDBField('FolderId') != PM_FOLDER_SENT ) { // 1. create message in sender's "Sent" folder (this method only for this step) // 2. create message body (shared) // 3. create message copy in recipient's "Inbox" folder return ; } - $message_body =& $this->Application->recallObject($event->Prefix.'-body', null, Array ('skip_autoload' => true)); + $message_body =& $this->Application->recallObject($event->Prefix . '-body', null, Array ('skip_autoload' => true)); /* @var $message_body kDBItem */ // 1. create message body (for sender & recipient) $copy_fields = Array ('Subject', 'Body', 'ShowSignatures', 'DisableSmileys', 'DisableBBCodes'); $message_body->SetDBFieldsFromHash($object->GetFieldValues(), $copy_fields); $body_created = $message_body->Create(); - if ($body_created) { + if ( $body_created ) { // 2. link body with message $object->SetDBField('PMBodyId', $message_body->GetID()); $object->Update(); @@ -120,9 +129,13 @@ * Sets post options to virtual fields * * @param kEvent $event + * @return void + * @access protected */ - function OnAfterItemLoad(&$event) + protected function OnAfterItemLoad(&$event) { + parent::OnAfterItemLoad($event); + $object =& $event->getObject(); /* @var $object kDBItem */ @@ -131,6 +144,7 @@ $options_map = $post_helper->getOptionsMap(); $post_options = $object->GetDBField('Options'); + foreach ($options_map as $option_name => $field_name) { $option_value = $post_helper->GetPostOption($option_name, $post_options); $object->SetDBField($field_name, (int)$option_value);