Sha256: 6ff89eddb44132ebd86d0ea33c824724038f41dea5107ddfdebd52f33d4a6cb9

Contents?: true

Size: 1.23 KB

Versions: 2

Compression:

Stored size: 1.23 KB

Contents

module MenuHelper
  
  ##
  # build menu to site
  # 
  # @param menu title items
  ##
  def build_menu(menu)
    raw %Q{
      <li id="fat-menu" class="dropdown">
        <a href="#" class="dropdown-toggle" data-toggle="dropdown">
          #{t(menu[:title]+".link")} <b class="caret"></b>
        </a>
        <ul class="dropdown-menu">
          #{build_menu_items(menu)}
        </ul>
      </li>
        }
  end
  
  def build_menu_items(menu)
    returns = ""
    menu[:items].each do |item|
      rails_model = item.to_s.titlecase.gsub(' ','').singularize.to_sym
      
      if can? :read, rails_model
        
        if (item.is_a? Array)
          item_title = item[0]
          path = eval item[1]
        else
          item_title = item
          menu_path = []
          menu_path << menu[:namespace] if !menu[:namespace].empty?
          menu_path << item
          menu_path << "path"
          path = eval(menu_path.join('_')+"()")
  			end        
  			
  			returns += %Q{ <li>#{ link_to t(item_title.to_s+".title"), path }</li> }

      end
    end
    returns
  end
  
  def build_menu_maintence()
    build_menu(GUARACRM::Menus::MAINTENCE)
  end
  
  def build_menu_admin()
    build_menu(GUARACRM::Menus::ADMINISTRATION)
  end
  
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
guara-0.0.3 app/helpers/menu_helper.rb
guara-0.0.1.rc app/helpers/menu_helper.rb