Index: branches/5.3.x/core/units/users/users_event_handler.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 15698) +++ branches/5.3.x/core/units/users/users_event_handler.php (.../users_event_handler.php) (revision 15810) @@ -1,6 +1,6 @@ isSubscriberOnly() ) { - $temp_handler = $this->Application->recallObject($event->Prefix . '_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->Prefix . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems($event->Prefix, '', Array($object->GetID())); @@ -1582,7 +1582,7 @@ return; } - $temp_handler = $this->Application->recallObject($event->Prefix.'_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->Prefix.'_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $ids = $this->StoreSelectedIDs($event); Index: branches/5.3.x/core/units/scheduled_tasks/scheduled_task_eh.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/scheduled_tasks/scheduled_task_eh.php (.../scheduled_task_eh.php) (revision 15698) +++ branches/5.3.x/core/units/scheduled_tasks/scheduled_task_eh.php (.../scheduled_task_eh.php) (revision 15810) @@ -1,6 +1,6 @@ Conn->GetCol($sql); if ($delete_ids) { - $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems($event->Prefix, $event->Special, $delete_ids); Index: branches/5.3.x/core/units/email_templates/email_template_eh.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/email_templates/email_template_eh.php (.../email_template_eh.php) (revision 15698) +++ branches/5.3.x/core/units/email_templates/email_template_eh.php (.../email_template_eh.php) (revision 15810) @@ -1,6 +1,6 @@ Application->recallObject('system-event-subscription_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject('system-event-subscription_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event->MasterEvent)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems('system-event-subscription', '', $ids); Index: branches/5.3.x/core/kernel/db/cat_event_handler.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 15698) +++ branches/5.3.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 15810) @@ -1,6 +1,6 @@ Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); + $temp = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp kTempTablesHandler */ $this->Application->SetVar('ResetCatBeforeClone', 1); // used in "kCatDBEventHandler::OnBeforeClone" @@ -354,7 +354,7 @@ $ids = $to_delete; } - $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $event->setEventParam('ids', $ids); @@ -2233,7 +2233,7 @@ if ( $perm_helper->ModifyCheckPermission($object->GetDBField($owner_field), $object->GetDBField('CategoryId'), $event->Prefix) == 2 ) { // 1. clone original item - $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $cloned_ids = $temp_handler->CloneItems($event->Prefix, $event->Special, Array ($object->GetID()), NULL, NULL, NULL, true); @@ -2496,7 +2496,7 @@ $perm_helper = $this->Application->recallObject('PermissionsHelper'); /* @var $perm_helper kPermissionsHelper */ - $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $owner_field = $this->getOwnerField($event->Prefix); Index: branches/5.3.x/core/units/logs/session_logs/session_log_eh.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/logs/session_logs/session_log_eh.php (.../session_log_eh.php) (revision 15698) +++ branches/5.3.x/core/units/logs/session_logs/session_log_eh.php (.../session_log_eh.php) (revision 15810) @@ -1,6 +1,6 @@ Conn->GetCol($sql); if ( $related_ids ) { - $temp_handler = $this->Application->recallObject('change-log_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject('change-log_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event->MasterEvent)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems('change-log', '', $related_ids); Index: branches/5.3.x/core/units/page_revisions/page_revision_eh.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/page_revisions/page_revision_eh.php (.../page_revision_eh.php) (revision 15698) +++ branches/5.3.x/core/units/page_revisions/page_revision_eh.php (.../page_revision_eh.php) (revision 15810) @@ -1,6 +1,6 @@ getCurrentDraftRevision($event); if ( $revision_id ) { - $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject($event->getPrefixSpecial() . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems($event->Prefix, $event->Special, Array ($revision_id)); Index: branches/5.3.x/core/units/spam_reports/spam_report_eh.php =================================================================== diff -u -N -r15677 -r15810 --- branches/5.3.x/core/units/spam_reports/spam_report_eh.php (.../spam_report_eh.php) (revision 15677) +++ branches/5.3.x/core/units/spam_reports/spam_report_eh.php (.../spam_report_eh.php) (revision 15810) @@ -1,6 +1,6 @@ GetDBField('ItemPrefix'); if ( !isset($temp_handlers[$item_prefix]) ) { - $temp_handlers[$item_prefix] = $this->Application->recallObject($item_prefix . '_TempHandler', 'kTempTablesHandler'); + $temp_handlers[$item_prefix] = $this->Application->recallObject($item_prefix . '_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); } $temp_handlers[$item_prefix]->DeleteItems($item_prefix, '', Array ($object->GetDBField('ItemId'))); Index: branches/5.3.x/core/units/forms/submission_log/submission_log_eh.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/forms/submission_log/submission_log_eh.php (.../submission_log_eh.php) (revision 15698) +++ branches/5.3.x/core/units/forms/submission_log/submission_log_eh.php (.../submission_log_eh.php) (revision 15810) @@ -1,6 +1,6 @@ Load($load_keys); if ($draft->isLoaded()) { - $temp_handler = $this->Application->recallObject('draft_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject('draft_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems('draft', '', Array ($draft->GetID())); Index: branches/5.3.x/core/kernel/utility/temp_handler.php =================================================================== diff -u -N -r15731 -r15810 --- branches/5.3.x/core/kernel/utility/temp_handler.php (.../temp_handler.php) (revision 15731) +++ branches/5.3.x/core/kernel/utility/temp_handler.php (.../temp_handler.php) (revision 15810) @@ -1,6 +1,6 @@ _tables = new kTempHandlerTopTable($prefix, $ids); - $this->_tables->setParentEvent($this->parentEvent); + + if ( is_object($this->parentEvent) ) { + $this->_tables->setParentEvent($this->parentEvent); + } } /** Index: branches/5.3.x/core/units/categories/categories_event_handler.php =================================================================== diff -u -N -r15698 -r15810 --- branches/5.3.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 15698) +++ branches/5.3.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 15810) @@ -1,6 +1,6 @@ Conn->GetCol($sql); if ( $ids ) { - $temp_handler = $this->Application->recallObject('system-event-subscription_TempHandler', 'kTempTablesHandler'); + $temp_handler = $this->Application->recallObject('system-event-subscription_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event->MasterEvent)); /* @var $temp_handler kTempTablesHandler */ $temp_handler->DeleteItems('system-event-subscription', '', $ids); @@ -1323,7 +1323,7 @@ $this->Application->SetVar('m_cat_id', $dest_cat); $item_ids = $this->Conn->GetCol( sprintf($ids_sql, implode(',', $item_resource_ids) ) ); - $temp = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler'); + $temp = $this->Application->recallObject($event->getPrefixSpecial().'_TempHandler', 'kTempTablesHandler', Array ('parent_event' => $event)); if($item_ids) $temp->CloneItems($event->Prefix, $event->Special, $item_ids); }