Sha256: a8e00898def30e7433e118961b614d2b37f521939a13b75b12fb86193fa78784

Contents?: true

Size: 874 Bytes

Versions: 3

Compression:

Stored size: 874 Bytes

Contents

module ActiveAdmin
  class BaseController < ::InheritedResources::Base
    module Menu
      extend ActiveSupport::Concern

      included do
        before_action :set_current_tab
        helper_method :current_menu
      end

      protected

      def current_menu
        active_admin_config.navigation_menu
      end

      # Set's @current_tab to be name of the tab to mark as current
      # Get's called through a before filter
      def set_current_tab
        @current_tab = active_admin_config.menu_item

        if current_menu && active_admin_config.belongs_to? && parent?
          parent_item = active_admin_config.belongs_to_config.target.menu_item
          if current_menu.include? parent_item
            @current_tab = parent_item
          end
        else
          @current_tab = active_admin_config.menu_item
        end
      end

    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
activeadmin-rails-1.7.2 lib/active_admin/base_controller/menu.rb
activeadmin-rails-1.7.1 lib/active_admin/base_controller/menu.rb
activeadmin-rails-1.7.0 lib/active_admin/base_controller/menu.rb