gitlab-org--gitlab-foss/app/services/issues/create_service.rb
2016-03-17 07:39:16 +01:00

21 lines
635 B
Ruby

module Issues
class CreateService < Issues::BaseService
def execute(set_author: true)
filter_params
label_params = params[:label_ids]
issue = project.issues.new(params.except(:label_ids))
issue.author = current_user if set_author
if issue.save
issue.update_attributes(label_ids: label_params)
notification_service.new_issue(issue, current_user)
todo_service.new_issue(issue, current_user)
event_service.open_issue(issue, current_user)
issue.create_cross_references!(current_user)
execute_hooks(issue, 'open')
end
issue
end
end
end