update_service.rb
485 Bytes
module Milestones
class UpdateService < Milestones::BaseService
def execute(milestone)
state = params.delete('state_event')
case state
when 'reopen'
Milestones::ReopenService.new(project, current_user, {}).execute(milestone)
when 'close'
Milestones::CloseService.new(project, current_user, {}).execute(milestone)
end
if params.present?
milestone.update_attributes(params)
end
milestone
end
end
end