Index: branches/5.2.x/core/units/categories/categories_event_handler.php =================================================================== diff -u -N -r14637 -r14644 --- branches/5.2.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 14637) +++ branches/5.2.x/core/units/categories/categories_event_handler.php (.../categories_event_handler.php) (revision 14644) @@ -1,6 +1,6 @@ Application->GetSID() . '_' . TABLE_PREFIX . 'Search search_result LEFT JOIN %1$s ON %1$s.ResourceId = search_result.ResourceId'; - $sql = str_replace('FROM %1$s', $search_sql, $object->SelectClause); + $sql = str_replace('FROM %1$s', $search_sql, $object->GetPlainSelectSQL()); $object->SetSelectSQL($sql); @@ -2194,7 +2194,7 @@ $weight_sum += $search_config[$field]['Priority']; // counting weight sum; used when making relevance clause // processing multilingual fields - if ( $object->GetFieldOption($field, 'formatter') == 'kMultiLanguage' ) { + if ( !$search_config[$field]['CustomFieldId'] && $object->GetFieldOption($field, 'formatter') == 'kMultiLanguage' ) { $field_list[$key.'_primary'] = 'l'.$this->Application->GetDefaultLanguageId().'_'.$field; $field_list[$key] = 'l'.$lang.'_'.$field; Index: branches/5.2.x/core/kernel/kbase.php =================================================================== diff -u -N -r14608 -r14644 --- branches/5.2.x/core/kernel/kbase.php (.../kbase.php) (revision 14608) +++ branches/5.2.x/core/kernel/kbase.php (.../kbase.php) (revision 14644) @@ -1,6 +1,6 @@ SelectClause; + } + + /** * Returns SELECT part of list' query. - * 1. Occurences of "%1$s" and "%s" are replaced to kDBBase::TableName - * 2. Occurences of "%3$s" are replaced to temp table prefix (only for table, using TABLE_PREFIX) + * 1. Occurrences of "%1$s" and "%s" are replaced to kDBBase::TableName + * 2. Occurrences of "%3$s" are replaced to temp table prefix (only for table, using TABLE_PREFIX) * * @param string $base_query given base query will override unit default select query - * @param bool $replace_table replace all possible occurences + * @param bool $replace_table replace all possible occurrences * @return string * @access public * @see kDBBase::replaceModePrefix @@ -326,7 +339,7 @@ } /** - * Allows substables to be in same mode as main item (e.g. LEFT JOINED ones) + * Allows sub-stables to be in same mode as main item (e.g. LEFT JOINED ones) * * @param string $query * @return string Index: branches/5.2.x/core/kernel/db/cat_event_handler.php =================================================================== diff -u -N -r14628 -r14644 --- branches/5.2.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 14628) +++ branches/5.2.x/core/kernel/db/cat_event_handler.php (.../cat_event_handler.php) (revision 14644) @@ -1,6 +1,6 @@ Set($event->getPrefixSpecial() . '_id', $object->GetID()); $use_pending_editing = $this->Application->getUnitOption($event->Prefix, 'UsePendingEditing'); - + if ( $use_pending_editing && $event->Special != 'original' ) { $this->Application->SetVar($event->Prefix . '.original_id', $object->GetDBField('OrgId')); } @@ -435,7 +435,7 @@ $search_sql = ' FROM ' . TABLE_PREFIX . 'ses_' . $this->Application->GetSID() . '_' . TABLE_PREFIX . 'Search search_result LEFT JOIN %1$s ON %1$s.ResourceId = search_result.ResourceId'; - $sql = str_replace('FROM %1$s', $search_sql, $object->SelectClause); + $sql = str_replace('FROM %1$s', $search_sql, $object->GetPlainSelectSQL()); $object->SetSelectSQL($sql); @@ -497,7 +497,7 @@ $p_item =& $this->Application->recallObject($related_prefix.'.current', null, Array('skip_autoload' => true)); /* @var $p_item kCatDBItem */ - + $p_item->Load( (int)$id ); $p_resource_id = $p_item->GetDBField('ResourceId'); @@ -748,7 +748,7 @@ if ($event->Special == 'export' || $event->Special == 'import') { $export_helper =& $this->Application->recallObject('CatItemExportHelper'); /* @var $export_helper kCatDBItemExportHelper */ - + $export_helper->prepareExportColumns($event); } } @@ -806,7 +806,7 @@ /** * Calculates hot limit for current item's table - * + * * @param kEvent $event * @return float * @access protected @@ -1075,7 +1075,7 @@ $query_object =& $this->Application->recallObject('HTTPQuery'); /* @var $query_object kHTTPQuery */ - + $sql = 'SHOW TABLES LIKE "'.$search_table.'"'; if(!isset($query_object->Get['keywords']) && @@ -1133,7 +1133,7 @@ $weight_sum += $search_config[$field]['Priority']; // counting weight sum; used when making relevance clause // processing multilingual fields - if ( $object->GetFieldOption($field, 'formatter') == 'kMultiLanguage' ) { + if ( !$search_config[$field]['CustomFieldId'] && $object->GetFieldOption($field, 'formatter') == 'kMultiLanguage' ) { $field_list[$key.'_primary'] = 'l'.$this->Application->GetDefaultLanguageId().'_'.$field; $field_list[$key] = 'l'.$lang.'_'.$field; @@ -2074,7 +2074,7 @@ { $event->redirect = false; $items_info = $this->Application->GetVar($event->getPrefixSpecial(true)); - + if ( $items_info ) { list($id, $field_values) = each($items_info); @@ -2129,7 +2129,7 @@ $user_id = $object->GetDBField($id_field); $options = $object->GetFieldOptions($id_field); - + if ( isset($options['options'][$user_id]) ) { $object->SetDBField($cached_field, $options['options'][$user_id]); } @@ -2171,7 +2171,7 @@ $perm_helper =& $this->Application->recallObject('PermissionsHelper'); /* @var $perm_helper kPermissionsHelper */ - + $owner_field = $this->getOwnerField($event->Prefix); if ( $perm_helper->ModifyCheckPermission($object->GetDBField($owner_field), $object->GetDBField('CategoryId'), $event->Prefix) == 2 ) {