From 4424840c8163247c9487b074b1fa7245ec41d1a9 Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Thu, 18 Jul 2024 23:59:27 +0300 Subject: [PATCH] adjust submissions endpoint --- app/controllers/api/submissions_controller.rb | 20 ++++++++++++------- config/routes.rb | 1 + 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/app/controllers/api/submissions_controller.rb b/app/controllers/api/submissions_controller.rb index 64642a61..a83a1e5b 100644 --- a/app/controllers/api/submissions_controller.rb +++ b/app/controllers/api/submissions_controller.rb @@ -75,13 +75,7 @@ module Api end end - json = submissions.flat_map do |submission| - submission.submitters.map do |s| - Submitters::SerializeForApi.call(s, with_documents: false, with_urls: true, params:) - end - end - - render json: + render json: build_create_json(submissions) rescue Submitters::NormalizeValues::BaseError => e Rollbar.warning(e) if defined?(Rollbar) @@ -102,6 +96,18 @@ module Api private + def build_create_json(submissions) + json = submissions.flat_map do |submission| + submission.submitters.map do |s| + Submitters::SerializeForApi.call(s, with_documents: false, with_urls: true, params:) + end + end + + json = { submitters: json } if request.path.ends_with?('/init') + + json + end + def create_submissions(template, params) is_send_email = !params[:send_email].in?(['false', false]) diff --git a/config/routes.rb b/config/routes.rb index a91dd94b..438bd16e 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -34,6 +34,7 @@ Rails.application.routes.draw do resources :submitters, only: %i[index show update] resources :submissions, only: %i[index show create destroy] do collection do + resources :init, only: %i[create], controller: 'submissions' resources :emails, only: %i[create], controller: 'submissions', as: :submissions_emails end end