Class | MenuStyles::HorizontalMenuStyle |
In: |
lib/webgen/plugins/menustyles/horizontal.rb
|
Parent: | DefaultMenuStyle |
# File lib/webgen/plugins/menustyles/horizontal.rb, line 41 41: def internal_build_menu( src_node, menu_tree ) 42: unless defined?( @css_added ) 43: @plugin_manager['Core/ResourceManager'].append_data( 'webgen-css', " 44: /* START webgen horizontal menu style */ 45: .webgen-menu-horiz ul { display: block; } 46: .webgen-menu-horiz li { display: inline; } 47: /* STOP webgen horizontal menu style */ 48: " ) 49: @css_added = true 50: end 51: "<div class=\"webgen-menu-horiz #{param('divClass')}\">#{submenu( src_node, menu_tree, 1 )}</div>" 52: end
# File lib/webgen/plugins/menustyles/horizontal.rb, line 58 58: def submenu( src_node, menu_node, level ) 59: if menu_node.nil? \ 60: || level > param( 'maxLevels' ) + param( 'startLevel' ) - 1 \ 61: || src_node.level < param( 'startLevel' ) \ 62: || !src_node.in_subtree_of?( menu_node.node_info[:node] ) 63: return '' 64: end 65: 66: submenu = '' 67: out = "<ul>" 68: menu_node.each do |child| 69: submenu << (child.has_children? ? submenu( src_node, child, level + 1 ) : '') 70: style, link = menu_item_details( src_node, child.node_info[:node] ) 71: out << "<li#{style.to_s.empty? ? '' : ' ' + style}>#{link}</li>" 72: end 73: out << "</ul>" 74: out << submenu 75: 76: if level < param( 'startLevel' ) 77: '' + submenu 78: else 79: out 80: end 81: end