Index: branches/5.2.x/units/listings/listings_event_handler.php =================================================================== --- branches/5.2.x/units/listings/listings_event_handler.php +++ branches/5.2.x/units/listings/listings_event_handler.php @@ -171,12 +171,14 @@ return false; } - $this->UpdateLink('OnPurchase', $object->GetDBField('ItemResourceId'), $object->GetDBField('ListingTypeId')); + list($link_object, $listtype_object) = $this->UpdateLink( + 'OnPurchase', + $object->GetDBField('ItemResourceId'), + $object->GetDBField('ListingTypeId') + ); - $listtype_object = $this->Application->recallObject('lst'); if ( $listtype_object->GetDBField('OnPurchaseAddToCatEnabled') ) { - $link_object = $this->Application->recallObject('l'); $add_to_cat = (int)$listtype_object->GetDBField('OnPurchaseAddToCat'); $sql = 'DELETE FROM '.$this->Application->getUnitOption('l-ci', 'TableName').' WHERE CategoryId = '.$add_to_cat.' @@ -202,9 +204,12 @@ $has_been_reset[$original_values['ListingId']] = 1; - $this->UpdateLink('OnExpire', $original_values['ItemResourceId'], $original_values['ListingTypeId']); + list (, $listtype_object) = $this->UpdateLink( + 'OnExpire', + $original_values['ItemResourceId'], + $original_values['ListingTypeId'] + ); - $listtype_object = $this->Application->recallObject('lst'); if( $listtype_object->GetDBField('OnExpireRemoveFromCatEnabled') ) { $remove_from_cat = $listtype_object->GetDBField('OnExpireRemoveFromCat'); @@ -262,6 +267,8 @@ } $link_object->Update(); + + return array($link_object, $listtype_object); } /** @@ -843,4 +850,4 @@ $calculated_fields['']['LinkName'] = 'CONCAT(item_table.l' . $language_id . '_Name, " (", item_table.Url, ")")'; $this->Application->setUnitOption($event->Prefix, 'CalculatedFields', $calculated_fields); } -} \ No newline at end of file +}