Sha256: 778dec9b4f3372728504802097b44df779bac375c016e08f7ba81ff4d7e87c82

Contents?: true

Size: 785 Bytes

Versions: 12

Compression:

Stored size: 785 Bytes

Contents

module ActiveAdmin
  module Views

    class Panel < ActiveAdmin::Component
      builder_method :panel

      def build(title, attributes = {})
        icon_name = attributes.delete(:icon)
        icn = icon_name ? icon(icon_name) : "".html_safe
        super(attributes)
        add_class "panel"
        @title = h3(icn + title.to_s)
        @contents = div(:class => "panel_contents")
      end

      def add_child(child)
        if @contents
          @contents << child
        else
          super
        end
      end

      # Override children? to only report children when the panel's
      # contents have been added to. This ensures that the panel
      # correcly appends string values, etc.
      def children?
        @contents.children?
      end

    end

  end
end

Version data entries

12 entries across 12 versions & 3 rubygems

Version Path
activeadmin-0.6.6 lib/active_admin/views/components/panel.rb
activeadmin-0.6.5 lib/active_admin/views/components/panel.rb
activeadmin-0.6.4 lib/active_admin/views/components/panel.rb
yousty-activeadmin-1.0.4.pre lib/active_admin/views/components/panel.rb
yousty-activeadmin-1.0.3.pre lib/active_admin/views/components/panel.rb
yousty-activeadmin-1.0.2.pre lib/active_admin/views/components/panel.rb
activeadmin-0.6.3 lib/active_admin/views/components/panel.rb
yousty-activeadmin-1.0.1.pre lib/active_admin/views/components/panel.rb
yousty-activeadmin-1.0.0.pre lib/active_admin/views/components/panel.rb
activeadmin-0.6.2 lib/active_admin/views/components/panel.rb
activeadmin-0.6.1 lib/active_admin/views/components/panel.rb
aa-rails4-0.6.0 lib/active_admin/views/components/panel.rb