Index: branches/5.2.x/core/units/categories/categories_event_handler.php =================================================================== diff -u -N -r16655 -r16671 --- branches/5.2.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 16655) +++ branches/5.2.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 16671) @@ -1,6 +1,6 @@ getEventParam('except'); - $except_types = $except_types ? explode(',', $except_types) : Array (); + $except_types = $except_types ? explode(',', $except_types) : array(); + $item_type = (int)$this->Application->getUnitOption($event->Prefix, 'ItemType'); if (in_array('related', $types) || in_array('related', $except_types)) { $related_to = $event->getEventParam('related_to'); @@ -395,7 +396,6 @@ } $rel_table = $this->Application->getUnitOption('rel', 'TableName'); - $item_type = (int)$this->Application->getUnitOption($event->Prefix, 'ItemType'); if ($item_type == 0) { trigger_error('ItemType not defined for prefix ' . $event->Prefix . '', E_USER_WARNING); @@ -561,7 +561,9 @@ $object = $event->getObject(); $search_sql = ' FROM ' . $search_helper->getSearchTable() . ' search_result - JOIN %1$s ON %1$s.ResourceId = search_result.ResourceId'; + JOIN %1$s + ON %1$s.ResourceId = search_result.ResourceId + AND search_result.ItemType = ' . $item_type; $sql = str_replace('FROM %1$s', $search_sql, $object->GetPlainSelectSQL()); $object->SetSelectSQL($sql);