Class: ActiveAdmin::Views::Tabs

Inherits:
Component
  • Object
show all
Defined in:
lib/active_admin/views/components/tabs.rb

Instance Method Summary collapse

Instance Method Details

#build(&block) ⇒ Object



12
13
14
15
# File 'lib/active_admin/views/components/tabs.rb', line 12

def build(&block)
  @menu = ul(class: 'nav nav-tabs', role: "tablist")
  @tabs_content = div(class: 'tab-content')
end

#build_content_item(title, options, &block) ⇒ Object



25
26
27
28
# File 'lib/active_admin/views/components/tabs.rb', line 25

def build_content_item(title, options, &block)
  options = options.reverse_merge(id: title.parameterize)
  div(options, &block)
end

#build_menu_item(title, options, &block) ⇒ Object



17
18
19
20
21
22
23
# File 'lib/active_admin/views/components/tabs.rb', line 17

def build_menu_item(title, options, &block)
  fragment = options.fetch(:id, title.parameterize)
  html_options = options.fetch(:html_options, {})
  li html_options do
    link_to title, "##{fragment}"
  end
end

#tab(title, options = {}, &block) ⇒ Object



6
7
8
9
10
# File 'lib/active_admin/views/components/tabs.rb', line 6

def tab(title, options = {}, &block)
  title = title.to_s.titleize if title.is_a? Symbol
  @menu << build_menu_item(title, options, &block)
  @tabs_content << build_content_item(title, options, &block)
end