diff --git a/lib/redmine/menu_manager.rb b/lib/redmine/menu_manager.rb index 1bb991178..94b92c6b7 100644 --- a/lib/redmine/menu_manager.rb +++ b/lib/redmine/menu_manager.rb @@ -190,20 +190,17 @@ module Redmine # Checks if a user is allowed to access the menu item by: # - # * Checking the conditions of the item # * Checking the url target (project only) + # * Checking the conditions of the item def allowed_node?(node, user, project) + if project && user && !user.allowed_to?(node.url, project) + return false + end if node.condition && !node.condition.call(project) # Condition that doesn't pass return false end - - if project - return user && user.allowed_to?(node.url, project) - else - # outside a project, all menu items allowed - return true - end + return true end end