diff options
Diffstat (limited to 'app/policies/project_member_policy.rb')
-rw-r--r-- | app/policies/project_member_policy.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/app/policies/project_member_policy.rb b/app/policies/project_member_policy.rb index ca33b95e523..91f1eb35506 100644 --- a/app/policies/project_member_policy.rb +++ b/app/policies/project_member_policy.rb @@ -8,7 +8,11 @@ class ProjectMemberPolicy < BasePolicy condition(:project_bot) { @subject.user&.project_bot? } rule { anonymous }.prevent_all - rule { target_is_owner }.prevent_all + + rule { target_is_owner }.policy do + prevent :update_project_member + prevent :destroy_project_member + end rule { ~project_bot & can?(:admin_project_member) }.policy do enable :update_project_member |