Module: Redmine::MenuManager::MenuController
- Included in:
 - ApplicationController
 
- Defined in:
 - lib/redmine/menu_manager.rb
 
Overview
Defined Under Namespace
Modules: ClassMethods
Instance Method Summary collapse
- #current_menu(project) ⇒ Object
 - 
  
    
      #current_menu_item  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Returns the menu item name according to the current action.
 - #menu_items ⇒ Object
 - 
  
    
      #redirect_to_menu_item(name)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Redirects user to the menu item Returns false if user is not authorized.
 - 
  
    
      #redirect_to_project_menu_item(project, name)  ⇒ Object 
    
    
  
  
  
  
  
  
  
  
  
    
Redirects user to the menu item of the given project Returns false if user is not authorized.
 
Instance Method Details
#current_menu(project) ⇒ Object
      57 58 59 60 61 62 63  | 
    
      # File 'lib/redmine/menu_manager.rb', line 57 def (project) if project && !project.new_record? :project_menu elsif self.class. :application_menu end end  | 
  
#current_menu_item ⇒ Object
Returns the menu item name according to the current action
      66 67 68 69  | 
    
      # File 'lib/redmine/menu_manager.rb', line 66 def @current_menu_item ||= [controller_name.to_sym][:actions][action_name.to_sym] || [controller_name.to_sym][:default] end  | 
  
#menu_items ⇒ Object
      53 54 55  | 
    
      # File 'lib/redmine/menu_manager.rb', line 53 def self.class. end  | 
  
#redirect_to_menu_item(name) ⇒ Object
Redirects user to the menu item Returns false if user is not authorized
      73 74 75  | 
    
      # File 'lib/redmine/menu_manager.rb', line 73 def (name) (nil, name) end  | 
  
#redirect_to_project_menu_item(project, name) ⇒ Object
Redirects user to the menu item of the given project Returns false if user is not authorized
      79 80 81 82 83 84 85 86 87 88 89  | 
    
      # File 'lib/redmine/menu_manager.rb', line 79 def (project, name) = project.nil? ? :application_menu : :project_menu item = Redmine::MenuManager.items().detect {|i| i.name.to_s == name.to_s} if item && item.allowed?(User.current, project) url = item.url url = {item.param => project}.merge(url) if project redirect_to url return true end false end  |