Class: BootstrapComponentsHelpers::AccordionHelper::AccordionBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/bootstrap-components-helpers/accordion_helper.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(opts, parent) ⇒ AccordionBuilder

Returns a new instance of AccordionBuilder.



17
18
19
20
# File 'lib/bootstrap-components-helpers/accordion_helper.rb', line 17

def initialize opts, parent
  @parent = parent
  @opts = opts
end

Instance Attribute Details

#parentObject (readonly)

Returns the value of attribute parent.



14
15
16
# File 'lib/bootstrap-components-helpers/accordion_helper.rb', line 14

def parent
  @parent
end

Instance Method Details

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



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/bootstrap-components-helpers/accordion_helper.rb', line 22

def pane title, options = {}, &block
  css_class = options[:open] ? 'in' : ''
   :div, class: 'panel panel-default' do
    heading =  :div, class: 'panel-heading' do
       :h4, class: 'panel-title' do
        link_to title, "##{title.parameterize}_pane", 'data-toggle': 'collapse', 'data-parent': "##{@opts[:accordion_id]}"
      end
    end
    body =  :div, class: "panel-collapse collapse #{css_class}", id: "#{title.parameterize}_pane" do
       :div, class: 'panel-body' do
        capture(&block)
      end
    end
    heading + body
  end
end