public static function render(array $treeviewData = array(), $init = true)
{
$html = '';
if ($init) {
$html .= '<div id="browser">';
}
$html .= '<ul>';
foreach ($treeviewData as $iterator) {
if (!$iterator instanceof IterableInterface) {
continue;
}
$children = $iterator->getChildren();
$hasChildren = !empty($children);
$html .= '<li id="' . $iterator->getIterableId() . '"';
if ($hasChildren) {
$rel = ' class="folder"';
$ins = '<ins class="jstree-icon"> </ins>';
$renderChildren = self::render($children, false);
} else {
$renderChildren = '';
$rel = ' class="default"';
$ins = '';
$requestUri = Registry::get('Application')->getRequest()->getUri()->getPath();
if ($requestUri == $iterator->getEditUrl()) {
$rel = ' class="default active"';
}
}
$html .= $rel . '>' . $ins;
$html .= self::renderLink($iterator);
$html .= self::renderIcon($iterator);
$html .= $iterator->getName() . '</a>';
$html .= $renderChildren;
$html .= '</li>';
}
$html .= '</ul>';
if ($init) {
$html .= '</div>';
}
return $html;
}