Index: trunk/themes/default2007/platform/designs/content_boxes.tpl =================================================================== diff -u -N -r8369 -r8385 --- trunk/themes/default2007/platform/designs/content_boxes.tpl (.../content_boxes.tpl) (revision 8369) +++ trunk/themes/default2007/platform/designs/content_boxes.tpl (.../content_boxes.tpl) (revision 8385) @@ -8,12 +8,12 @@ - + - - - "> + + "> "> Index: trunk/core/units/general/cat_tag_processor.php =================================================================== diff -u -N -r8369 -r8385 --- trunk/core/units/general/cat_tag_processor.php (.../cat_tag_processor.php) (revision 8369) +++ trunk/core/units/general/cat_tag_processor.php (.../cat_tag_processor.php) (revision 8385) @@ -204,6 +204,25 @@ $params['cat_id'] = $object->isLoaded() ? $object->GetDBField('CategoryId') : $this->Application->GetVar('m_cat_id'); return $perm_helper->TagPermissionCheck($params, $this->getPrefixSpecial().'_HasPermission'); } + + /** + * Creates link to current category or to module root category, when current category is home + * + * @param Array $params + * @return string + */ + function SuggestItemLink($params) + { + if (!isset($params['cat_id'])) { + $params['cat_id'] = $this->Application->GetVar('m_cat_id'); + } + + if ($params['cat_id'] == 0) { + $params['cat_id'] = $this->Application->findModule('Var', $this->Prefix, 'RootCat'); + } + + return $this->Application->ProcessParsedTag('c', 'CategoryLink', $params); + } } Index: trunk/core/units/categories/categories_tag_processor.php =================================================================== diff -u -N -r8358 -r8385 --- trunk/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 8358) +++ trunk/core/units/categories/categories_tag_processor.php (.../categories_tag_processor.php) (revision 8385) @@ -183,11 +183,9 @@ function CategoryLink($params) { - // 'p_id'=>'0', ?? - $params = array_merge(array('pass'=>'m'), $params); - $cat_id = getArrayValue($params,'cat_id'); + $params = array_merge(Array('pass' => 'm'), $params); + $cat_id = getArrayValue($params, 'cat_id'); if ($cat_id === false) { -// $cat_id = $this->Application->Parser->GetParam('cat_id'); $cat_id = $this->Application->GetVar($this->getPrefixSpecial().'_id'); } if ("$cat_id" == 'Root') { @@ -200,9 +198,8 @@ unset($params['cat_id']); $params['pass_category'] = 1; - - $main_processor =& $this->Application->recallObject('m_TagProcessor'); - return $main_processor->T($params); + + return $this->Application->ProcessParsedTag('m', 't', $params); } function CategoryList($params)