class Templet::Html::List
Public Instance Methods
call(*items, html_class: nil, item_class: nil, selection: nil, selected_class: 'active')
click to toggle source
Calls superclass method
Templet::Component::Partial#call
# File lib/templet/html/list.rb, line 7 def call(*items, html_class: nil, item_class: nil, selection: nil, selected_class: 'active') super() do ul html_class do items.flatten.map.with_index do |item, index| li item, li_class(selection, item, index, item_class, selected_class) end end end end
Private Instance Methods
li_class(selection, item, index, item_class, selected_class)
click to toggle source
# File lib/templet/html/list.rb, line 36 def li_class(selection, item, index, item_class, selected_class) if selected?(selection, item, index) if item_class and not item_class.empty? "#{item_class} #{selected_class}" else selected_class end else item_class end end
selected?(selection, item, index)
click to toggle source
# File lib/templet/html/list.rb, line 23 def selected?(selection, item, index) case selection when nil, false false when Integer index == selection when Regexp selection === item else selection.to_s == item.to_s end end