Class MenuStyles::VerticalMenuStyle
In: lib/webgen/plugins/menustyles/vertical.rb
Parent: MenuStyles::DefaultMenuStyle
DefaultMenuStyle HorizontalDropdownMenuStyle SectionMenuStyle VerticalDropdownMenuStyle HorizontalMenuStyle VerticalMenuStyle Webgen::HandlerPlugin lib/webgen/plugins/menustyles/section.rb lib/webgen/plugins/menustyles/horizontal.rb lib/webgen/plugins/menustyles/default.rb lib/webgen/plugins/menustyles/vertical_dropdown.rb lib/webgen/plugins/menustyles/vertical.rb lib/webgen/plugins/menustyles/horizontal_dropdown.rb MenuStyles dot/m_36_0.png

Methods

Public Instance methods

[Source]

    # File lib/webgen/plugins/menustyles/vertical.rb, line 45
45:     def internal_build_menu( src_node, menu_tree )
46:       "<div class=\"webgen-menu-vert #{param('divClass')}\">#{submenu( src_node, menu_tree, 1 )}</div>"
47:     end

Private Instance methods

[Source]

    # File lib/webgen/plugins/menustyles/vertical.rb, line 53
53:     def submenu( src_node, menu_node, level )
54:       if menu_node.nil? \
55:         || level > param( 'maxLevels' ) + param( 'startLevel' ) - 1 \
56:         || ( ( level > param( 'minLevels' ) + param( 'startLevel' ) - 1 ) \
57:              && ( menu_node.level >= src_node.level \
58:                   || ( param( 'showCurrentSubtreeOnly' ) && !src_node.in_subtree_of?( menu_node.node_info[:node] ) )
59:                   )
60:              ) \
61:         || src_node.level < param( 'startLevel' ) \
62:         || (level == param('startLevel') && !src_node.in_subtree_of?( menu_node.node_info[:node] ))
63:         return ''
64:       end
65: 
66:       submenus = ''
67:       out = "<ul>"
68:       menu_node.each do |child|
69:         menu = child.has_children? ? submenu( src_node, child, level + 1 ) : ''
70:         style, link = menu_item_details( src_node, child.node_info[:node] )
71:         submenus << menu
72:         out << "<li #{style}>#{link}"
73:         out << menu
74:         out << "</li>"
75:       end
76:       out << "</ul>"
77: 
78:       if level < param( 'startLevel' )
79:         '' + submenus
80:       else
81:         out
82:       end
83:     end

[Validate]