Improve user block logic
When block user - remove it from joined groups Dont remove user from own resources (groups, users)
This commit is contained in:
parent
0787726ae7
commit
6545527853
1 changed files with 11 additions and 0 deletions
|
@ -126,6 +126,17 @@ class User < ActiveRecord::Base
|
|||
after_transition any => :blocked do |user, transition|
|
||||
# Remove user from all projects and
|
||||
user.users_projects.find_each do |membership|
|
||||
# skip owned resources
|
||||
next if membership.project.owner == user
|
||||
|
||||
return false unless membership.destroy
|
||||
end
|
||||
|
||||
# Remove user from all groups
|
||||
user.users_groups.find_each do |membership|
|
||||
# skip owned resources
|
||||
next if membership.group.owner == user
|
||||
|
||||
return false unless membership.destroy
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue