diff --git a/app/controllers/merge_requests_controller.rb b/app/controllers/merge_requests_controller.rb index 8c3e94d64..dd184457c 100644 --- a/app/controllers/merge_requests_controller.rb +++ b/app/controllers/merge_requests_controller.rb @@ -1,17 +1,15 @@ class MergeRequestsController < ApplicationController before_action :authenticate_user! - before_action :find_resource, only: %i[organisations update_organisations remove_merging_organisation] - before_action :find_resource_by_id, only: %i[update] + before_action :find_resource, only: %i[update organisations update_organisations remove_merging_organisation] def create @merge_request = MergeRequest.create!(merge_request_params) - redirect_to merge_request_organisations_path(@merge_request) + redirect_to organisations_merge_request_path(@merge_request) end def organisations - @merge_request = MergeRequest.find(params[:merge_request_id]) + @merge_request = MergeRequest.find(params[:id]) @answer_options = organisations_answer_options - @merging_organisations_list = [@merge_request.requesting_organisation] + @merge_request.merging_organisations end def update @@ -26,10 +24,8 @@ class MergeRequestsController < ApplicationController merge_request_organisation = MergeRequestOrganisation.new(merge_request_organisation_params) @answer_options = organisations_answer_options if merge_request_organisation.save - @merging_organisations_list = [@merge_request.requesting_organisation] + @merge_request.merging_organisations render :organisations else - @merging_organisations_list = [@merge_request.requesting_organisation] + @merge_request.merging_organisations render :organisations, status: :unprocessable_entity end end @@ -37,7 +33,6 @@ class MergeRequestsController < ApplicationController def remove_merging_organisation MergeRequestOrganisation.find_by(merge_request_organisation_params)&.destroy! @answer_options = organisations_answer_options - @merging_organisations_list = [@merge_request.requesting_organisation] + @merge_request.merging_organisations render :organisations end @@ -67,15 +62,11 @@ private end def find_resource - @merge_request = MergeRequest.find(params[:merge_request_id]) - end - - def find_resource_by_id @merge_request = MergeRequest.find(params[:id]) end def next_page_path - merge_request_absorbing_organisation_path(@merge_request) + absorbing_organisation_merge_request_path(@merge_request) end def previous_template diff --git a/app/views/merge_requests/organisations.html.erb b/app/views/merge_requests/organisations.html.erb index f306fc4de..aa5b5beb6 100644 --- a/app/views/merge_requests/organisations.html.erb +++ b/app/views/merge_requests/organisations.html.erb @@ -11,7 +11,7 @@
Add all organisations to be merged - we have already added your own.
-<%= form_with model: @merge_request, url: merge_request_organisations_path, method: :patch do |f| %> +<%= form_with model: @merge_request, url: organisations_merge_request_path, method: :patch do |f| %> <%= f.govuk_error_summary %>Start typing to search
<%= render partial: "organisation_relationships/related_organisation_select_question", locals: { @@ -38,7 +38,7 @@ scope: "row", class: "govuk-!-text-align-right", }) do %> - <%= govuk_link_to("Remove", merge_request_organisations_remove_path(merge_request: { merging_organisation: merging_organisation.id })) %> + <%= govuk_link_to("Remove", organisations_remove_merge_request_path(merge_request: { merging_organisation: merging_organisation.id })) %> <% end %> <% end %> <% end %> diff --git a/config/routes.rb b/config/routes.rb index 30a7321d0..95dcb21a3 100644 --- a/config/routes.rb +++ b/config/routes.rb @@ -124,10 +124,12 @@ Rails.application.routes.draw do end resources :merge_requests, path: "/merge-request" do - get "organisations", to: "merge_requests#organisations" - patch "organisations", to: "merge_requests#update_organisations" - get "organisations/remove", to: "merge_requests#remove_merging_organisation" - get "absorbing-organisation", to: "merge_requests#absorbing_organisation" + member do + get "organisations" + patch "organisations", to: "merge_requests#update_organisations" + get "organisations/remove", to: "merge_requests#remove_merging_organisation" + get "absorbing-organisation" + end end resources :lettings_logs, path: "/lettings-logs" do