diff options
Diffstat (limited to 'views/default/navigation/menu/elements/item.php')
| -rw-r--r-- | views/default/navigation/menu/elements/item.php | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/views/default/navigation/menu/elements/item.php b/views/default/navigation/menu/elements/item.php index 5a9a8743d..fd9738826 100644 --- a/views/default/navigation/menu/elements/item.php +++ b/views/default/navigation/menu/elements/item.php @@ -1,25 +1,41 @@ <?php +/** + * A single element of a menu. + * + * @package Elgg.Core + * @subpackage Navigation + * + * @uses $vars['item'] ElggMenuItem + * @uses $vars['item_class'] Additional CSS class for the menu item + */ $item = $vars['item']; -$class = ''; $link_class = 'elgg-menu-closed'; if ($item->getSelected()) { - $class = 'class="elgg-state-selected"'; + // @todo switch to addItemClass when that is implemented + //$item->setItemClass('elgg-state-selected'); $link_class = 'elgg-menu-opened'; } -$link_vars = array(); - $children = $item->getChildren(); if ($children) { - $link_vars['class'] = "elgg-menu-parent $link_class"; + $item->addLinkClass($link_class); + $item->addLinkClass('elgg-menu-parent'); +} + +$item_class = $item->getItemClass(); +if ($item->getSelected()) { + $item_class = "$item_class elgg-state-selected"; +} +if (isset($vars['item_class']) && $vars['item_class']) { + $item_class .= ' ' . $vars['item_class']; } -echo "<li $class>"; -echo $item->getLink($link_vars); +echo "<li class=\"$item_class\">"; +echo $item->getContent(); if ($children) { - echo elgg_view('navigation/menu/elements/group', array( + echo elgg_view('navigation/menu/elements/section', array( 'items' => $children, 'class' => 'elgg-menu elgg-child-menu', )); |
