gitlab-org--gitlab-foss/app/services/emails/destroy_service.rb

20 lines
516 B
Ruby
Raw Normal View History

module Emails
2017-06-19 08:51:46 -04:00
class DestroyService < ::Emails::BaseService
def execute(skip_authorization: false)
raise Gitlab::Access::AccessDeniedError unless skip_authorization || can_manage_emails?
2017-06-22 02:55:07 -04:00
Email.find_by_email(@email).destroy && update_secondary_emails!
end
private
def update_secondary_emails!
result = ::Users::UpdateService.new(@current_user, @current_user).execute do |user|
user.update_secondary_emails!
end
result[:status] == 'success'
end
end
end