/**
* Get the children of this node
*
* @param boolean $recursive False by default
*
* @return CategoryNode[] The children
*
* @since 1.6
*/
public function &getChildren($recursive = false)
{
if (!$this->_allChildrenloaded) {
$temp = $this->_constructor->get($this->id, true);
if ($temp) {
$this->_children = $temp->getChildren();
$this->_leftSibling = $temp->getSibling(false);
$this->_rightSibling = $temp->getSibling(true);
$this->setAllLoaded();
}
}
if ($recursive) {
$items = array();
foreach ($this->_children as $child) {
$items[] = $child;
$items = array_merge($items, $child->getChildren(true));
}
return $items;
}
return $this->_children;
}