All pastes #751873 Raw Edit

Anonymous

public text v1 · immutable
#751873 ·published 2007-10-27 20:23 UTC
rendered paste body

function bison_nice_menu_tree($pid = 1, $menu = NULL) {
  $menu = isset($menu) ? $menu : menu_get_menu();
  $output['content'] = '';

  $output['subject'] = $menu['items'][$pid]['title'];
  $index = 0;

  if ($menu['visible'][$pid]['children']) {
    $child_count =  count($menu['visible'][$pid]['children']);
    foreach ($menu['visible'][$pid]['children'] as $mid) {
      // Build class name based on menu path e.g. to give each menu item individual style.
      $path_class = 'menu-path-'. str_replace('/', '-', $menu['items'][$mid]['path']);
      if ($child_count == 1) {
        $path_class .= ' only_item';
      } else {
        if ($index == 0) $path_class .= ' first_item';
        if ($index == $child_count - 1) $path_class .= ' last_item';
      }
      if (count($menu['visible'][$mid]['children']) > 0) {
        $output['content'] .= '<li id="menu-'. $mid .'" class="menuparent '. $path_class .'">'. menu_item_link($mid);
        $output['content'] .= '<ul><!--[if lt IE 7]><iframe></iframe><![endif]-->';
        $tmp = theme('nice_menu_tree', $mid);
        $output['content'] .= $tmp['content'];
        $output['content'] .= '</ul>';
        $output['content'] .= '</li>';
      }
      else {
        $output['content'] .= '<li id="menu-'. $mid .'" class="'. $path_class .'">'. menu_item_link($mid) .'</li>';
      }
      $index++;
    }
  }
  return $output;
}