Sha256: ecb29d43fc198ad6dc6f1742d1336cf11c4a140f0b04894196e1f1028d14a73c

Contents?: true

Size: 1.29 KB

Versions: 25

Compression:

Stored size: 1.29 KB

Contents

module ActiveAdmin
  module Views
    class TitleBar < Component

      def build(title, action_items)
        super(id: "title_bar")
        @title = title
        @action_items = action_items
        build_titlebar_left
        build_titlebar_right
      end

      private

      def build_titlebar_left
        div id: "titlebar_left" do
          build_breadcrumb
          build_title_tag
        end
      end

      def build_titlebar_right
        div id: "titlebar_right" do
          build_action_items
        end
      end

      def build_breadcrumb(separator = "/")
        breadcrumb_config = active_admin_config && active_admin_config.breadcrumb

        links = if breadcrumb_config.is_a?(Proc)
          instance_exec(controller, &active_admin_config.breadcrumb)
        elsif breadcrumb_config.present?
          breadcrumb_links
        end
        return unless links.present? && links.is_a?(::Array)
        span class: "breadcrumb" do
          links.each do |link|
            text_node link
            span(separator, class: "breadcrumb_sep")
          end
        end
      end

      def build_title_tag
        h2(@title, id: 'page_title')
      end

      def build_action_items
        insert_tag(view_factory.action_items, @action_items) if @action_items.any?
      end

    end
  end
end

Version data entries

25 entries across 25 versions & 5 rubygems

Version Path
activeadmin_addons-1.1.2 vendor/bundle/ruby/2.3.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/views/title_bar.rb
activeadmin_addons-1.1.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.17.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.16.pre lib/active_admin/views/title_bar.rb
activeadmin_addons-1.1.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/views/title_bar.rb
activeadmin_addons-1.0.1 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/views/title_bar.rb
activeadmin_addons-1.0.0 vendor/bundle/ruby/2.2.0/bundler/gems/activeadmin-a5a53c3f2b8f/lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.15.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.14.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.13.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.12.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.11.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.10.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.9.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.8.pre lib/active_admin/views/title_bar.rb
activeadmin-1.0.0.pre2 lib/active_admin/views/title_bar.rb
activeadmin-1.0.0.pre1 lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.7.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.6.pre lib/active_admin/views/title_bar.rb
yousty-activeadmin-1.0.5.pre lib/active_admin/views/title_bar.rb