diff options
author | Rémy Coutable <remy@rymai.me> | 2017-10-11 16:47:08 +0200 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-02-27 16:02:22 +0100 |
commit | bf41063679b25371b2e64542f2f469b38502edf6 (patch) | |
tree | bc7363df6d75c628f593b29426b59ba05b10a223 /app/services/members/update_service.rb | |
parent | 3bf448267b117e79f08ab2f4b769d24a705a5f0f (diff) | |
download | gitlab-ce-bf41063679b25371b2e64542f2f469b38502edf6.tar.gz |
Remove explicit audit event log in MembershipActions
Move it to Members::ApproveAccessRequestService.
Also, note that there was a double audit event log for access request
destruction.
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'app/services/members/update_service.rb')
-rw-r--r-- | app/services/members/update_service.rb | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/app/services/members/update_service.rb b/app/services/members/update_service.rb new file mode 100644 index 00000000000..ebea9f96069 --- /dev/null +++ b/app/services/members/update_service.rb @@ -0,0 +1,17 @@ +module Members + class UpdateService < Members::BaseService + # returns the updated member + def execute(member, permission: :update) + permission_target = permission == :override ? source : member + raise Gitlab::Access::AccessDeniedError unless can?(current_user, action_member_permission(permission, member), permission_target) + + old_access_level = member.human_access + + if member.update_attributes(params) + after_execute(action: permission, old_access_level: old_access_level, member: member) + end + + member + end + end +end |