Class: AbAdmin::MenuItem

Inherits:
Object show all
Includes:
Utils::EvalHelpers
Defined in:
lib/ab_admin/menu_builder.rb

Instance Method Summary collapse

Methods included from Utils::EvalHelpers

#call_method_or_proc_on, #evaluate_method

Constructor Details

#initialize(title, path, options) ⇒ MenuItem

Returns a new instance of MenuItem.



72
73
74
75
76
# File 'lib/ab_admin/menu_builder.rb', line 72

def initialize(title, path, options)
  @title = title.is_a?(Symbol) ? I18n.t(title, :scope => [:admin, :navigation]) : title
  @path = path
  @options = options
end

Instance Method Details

#render(template, active = false) ⇒ Object



78
79
80
81
82
83
84
85
# File 'lib/ab_admin/menu_builder.rb', line 78

def render(template, active=false)
  return if @options[:if] && !call_method_or_proc_on(template, @options[:if])
  return if @options[:unless] && call_method_or_proc_on(template, @options[:unless])

  <<-HTML.html_safe
      <li class="#{'active' if active}">#{template.link_to @title, @path, @options}</li>
  HTML
end