diff --git a/app/controllers/admin/forms_controller.rb b/app/controllers/admin/forms_controller.rb index 174de93db..446cd0a2a 100644 --- a/app/controllers/admin/forms_controller.rb +++ b/app/controllers/admin/forms_controller.rb @@ -150,6 +150,7 @@ def update_admin_options def update_form_manager_options ensure_form_manager(form: @form) @form.update(form_admin_options_params) + set_service_stage_options flash.now[:notice] = 'Form Manager forms options updated successfully' end @@ -158,6 +159,7 @@ def show format.html do ensure_response_viewer(form: @form) unless @form.template? @questions = @form.ordered_questions + set_service_stage_options @events = @events = Event.where(object_type: 'Form', object_uuid: @form.uuid).order("created_at DESC") end @@ -517,6 +519,7 @@ def form_params :success_text, :success_text_heading, :service_id, + :service_stage_id, # PRA Info :omb_approval_number, :expiration_date, @@ -588,10 +591,15 @@ def form_admin_options_params :omb_approval_number, :expiration_date, :service_id, + :service_stage_id, :enforce_new_submission_validations, ) end + def set_service_stage_options + @service_stage_options = @form.service.present? ? @form.service.service_stages.order(:position, :name).map { |s| [s.name, s.id] } : [] + end + # Add rules for AASM state transitions here def transition_state Event.log_event(Event.names[:form_published], 'Form', @form.uuid, "Form #{@form.name} published at #{DateTime.now}", current_user.id) if (params['form']['aasm_state'] == 'published') && !@form.published? diff --git a/app/controllers/admin/service_stages_controller.rb b/app/controllers/admin/service_stages_controller.rb index 934aef207..a840acc32 100644 --- a/app/controllers/admin/service_stages_controller.rb +++ b/app/controllers/admin/service_stages_controller.rb @@ -13,7 +13,14 @@ def index else ensure_service_manager_permissions @service_stages = ServiceStage.order(:position) - render :unscoped_index + end + respond_to do |format| + format.html { + render :index + } + format.json { + render json: @service_stages + } end end diff --git a/app/views/admin/forms/_form_manager_options.html.erb b/app/views/admin/forms/_form_manager_options.html.erb index bb2f5e645..db6b91ac0 100644 --- a/app/views/admin/forms/_form_manager_options.html.erb +++ b/app/views/admin/forms/_form_manager_options.html.erb @@ -49,6 +49,16 @@ <%= f.select :service_id, form.organization.services.includes(:organization).order("organizations.name", :name).map { |h| ["#{h.organization.name} - #{h.name}", h.id] }, { include_blank: true }, class: "usa-select" %> +