Index: branches/RC/core/units/categories/categories_tag_processor.php =================================================================== diff -u -N -r11523 -r11525 --- branches/RC/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 11523) +++ branches/RC/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 11525) @@ -594,16 +594,25 @@ $tab_prefixes = $this->Application->GetVar('tp'); // {all, , none} if ($tab_prefixes === false) $tab_prefixes = 'all'; $skip_prefixes = isset($params['skip_prefixes']) && $params['skip_prefixes'] ? explode(',', $params['skip_prefixes']) : Array(); + $replace_main = isset($params['replace_m']) && $params['replace_m']; // get all prefixes available $prefixes = Array(); foreach ($this->Application->ModuleInfo as $module_name => $module_data) { - if ($module_data['Var'] == 'm' || $module_data['Var'] == 'adm') continue; - $prefixes[] = $module_data['Var']; + $prefix = $module_data['Var']; + + if ($prefix == 'adm'/* || $prefix == 'm'*/) continue; + + if ($prefix == 'm' && $replace_main) { + $prefix = 'c'; + } + + $prefixes[] = $prefix; } if ($tab_prefixes == 'none') { $skip_prefixes = array_unique(array_merge($skip_prefixes, $prefixes)); + unset($skip_prefixes[ array_search($replace_main ? 'c' : 'm', $skip_prefixes) ]); } elseif ($tab_prefixes != 'all') { // prefix list here @@ -974,7 +983,9 @@ if ($category_path === false) { // not chached if ($category_id > 0) { - $category_path = trim($this->CategoryName( Array('cat_id' => 0) ).' > '.str_replace('&|&', ' > ', $object->GetField('CachedNavbar')), ' > '); + $cached_navbar = preg_replace('/^Content&\|&/i', '', $object->GetField('CachedNavbar')); + + $category_path = trim($this->CategoryName( Array('cat_id' => 0) ).' > '.str_replace('&|&', ' > ', $cached_navbar), ' > '); } else { $category_path = $this->Application->Phrase( $this->Application->ConfigValue('Root_Name') );