Index: branches/RC/core/units/admin/admin_tag_processor.php =================================================================== diff -u -N -r11303 -r11368 --- branches/RC/core/units/admin/admin_tag_processor.php (.../admin_tag_processor.php) (revision 11303) +++ branches/RC/core/units/admin/admin_tag_processor.php (.../admin_tag_processor.php) (revision 11368) @@ -303,6 +303,7 @@ $params['children_count'] = isset($section_data['children']) ? count($section_data['children']) : 0; + // remove template, so it doesn't appear as additional parameter in url $template = $section_data['url']['t']; unset($section_data['url']['t']); @@ -319,6 +320,9 @@ $section_data['late_load'] = ''; } + // restore template + $section_data['url']['t'] = $template; + $ret .= $this->Application->ParseBlock( array_merge_recursive2($params, $section_data) ); $params['section_name'] = $section_name; } @@ -407,7 +411,10 @@ $special = isset($params['special']) ? $params['special'] : ''; $replace_main = isset($params['replace_m']) && $params['replace_m']; $skip_prefixes = isset($params['skip_prefixes']) ? explode(',', $params['skip_prefixes']) : Array(); - $block_params = Array('name' => $params['render_as']); + + $block_params = $this->prepareTagParams($params); + $block_params['name'] = $params['render_as']; + foreach ($this->Application->ModuleInfo as $module_name => $module_info) { $prefix = $module_info['Var']; @@ -418,9 +425,19 @@ $prefix = 'c'; } + $icon = $this->Application->getUnitOption($prefix, 'CatalogTabIcon'); + if (strpos($icon, ':') !== false) { + list ($icon_module, $icon) = explode(':', $icon, 2); + } + else { + $icon_module = 'core'; + } + $label = $this->Application->getUnitOption($prefix, $params['title_property']); $block_params['title'] = $label; $block_params['prefix'] = $prefix; + $block_params['icon_module'] = $icon_module; + $block_params['icon'] = $icon; $ret .= $this->Application->ParseBlock($block_params); } return $ret;