From ba61b13008afd0c9d7fcd80d51a7628930b4566a Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Wed, 17 Jun 2015 18:36:38 +0000 Subject: [PATCH] Prevent roles loading on each call to User#managed_roles for admins. git-svn-id: http://svn.redmine.org/redmine/trunk@14328 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/user.rb | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/app/models/user.rb b/app/models/user.rb index 9ff706178..b36447cad 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -157,6 +157,7 @@ class User < Principal @notified_projects_ids_changed = false @builtin_role = nil @visible_project_ids = nil + @managed_roles = nil base_reload(*args) end @@ -569,7 +570,7 @@ class User < Principal # Returns the roles that the user is allowed to manage for the given project def managed_roles(project) if admin? - Role.givable.to_a + @managed_roles ||= Role.givable.to_a else membership(project).try(:managed_roles) || [] end -- 2.39.5