'; + $s .= '
'; # get a big array of the parents tree - $parenttree = $wgTitle->getCategorieBrowser(); + $parenttree = $wgTitle->getParentCategoryTree(); # Render the array as a serie of links - function walkThrough ($tree) { - global $wgUser; - $sk = $wgUser->getSkin(); + # Need to give skin cause $this is undefined at this level + function walkThrough ($tree, &$skin) { $return = ''; foreach($tree as $element => $parent) { if(empty($parent)) { @@ -473,17 +451,19 @@ class Skin { $return .= '
'; } else { # grab the others elements - $return .= walkThrough($parent); + $return .= walkThrough($parent, $skin); } # add our current element to the list $eltitle = Title::NewFromText($element); - # FIXME : should be makeLink() [AV] - $return .= $sk->makeKnownLink($element, $eltitle->getText()).' > '; + if(!empty($parent)) $return .= ' > '; + $return .= $skin->makeLinkObj( $eltitle, $eltitle->getText() ) ; } return $return; } - $s .= walkThrough($parenttree); + # Skin object passed by reference cause it can not be + # accessed under the method subfunction walkThrough. + $s .= walkThrough($parenttree, $this); } return $s; @@ -500,20 +480,20 @@ class Skin { return "