Class: AbAdmin::Menu::Item
Instance Method Summary collapse
-
#initialize(title, url, options) ⇒ Item
constructor
A new instance of Item.
- #render(template) ⇒ Object
Constructor Details
#initialize(title, url, options) ⇒ Item
Returns a new instance of Item.
4 5 6 7 8 |
# File 'lib/ab_admin/menu/item.rb', line 4 def initialize(title, url, ) @title = title.is_a?(Symbol) ? I18n.t(title, scope: [:admin, :navigation]) : title @url = url @options = end |
Instance Method Details
#render(template) ⇒ Object
10 11 12 13 14 15 16 17 18 19 |
# File 'lib/ab_admin/menu/item.rb', line 10 def render(template) return unless template.option_conditions_met?(@options) item_url = @url.is_a?(String) ? @url : template.instance_exec(&@url) active = template.request.path.split('/')[2] == item_url.split('/')[2] <<-HTML.html_safe <li class="#{'active' if active}">#{template.link_to title(template), item_url, @options.except(:if, :unless, :badge)}</li> HTML end |