diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb index 82f7589ec..078399c2a 100644 --- a/app/models/merge_request.rb +++ b/app/models/merge_request.rb @@ -48,7 +48,7 @@ class MergeRequest < ApplicationRecord return "request_merged" if status == "request_merged" return "processing" if status == "processing" return "incomplete" unless required_questions_answered? - return "ready_to_merge" if absorbing_organisation.data_protection_confirmed? + return "ready_to_merge" if absorbing_organisation_signed_dsa? "merge_issues" end @@ -59,4 +59,8 @@ class MergeRequest < ApplicationRecord merging_organisations.count.positive? && errors.empty? end + + def absorbing_organisation_signed_dsa? + absorbing_organisation&.data_protection_confirmed? + end end diff --git a/app/views/merge_requests/_notification_banners.html.erb b/app/views/merge_requests/_notification_banners.html.erb new file mode 100644 index 000000000..7674773ab --- /dev/null +++ b/app/views/merge_requests/_notification_banners.html.erb @@ -0,0 +1,21 @@ +<% unless @merge_request.absorbing_organisation_signed_dsa? || @merge_request.absorbing_organisation_id.blank? %> + <%= govuk_notification_banner(title_text: "Important") do %> +
+ <% if @merge_request.dpo_user %> + Contact the Data Protection Officer: <%= link_to @merge_request.dpo_user.name, user_path(@merge_request.dpo_user.id) %> + <% else %> + <%= @merge_request.absorbing_organisation_name %> does not have a Data Protection Officer. You can assign one on the <%= link_to "users page", "#{organisation_path(@merge_request.absorbing_organisation_id)}/users" %>. + <% end %> + <% end %> +<% end %> + +<% if @merge_request.last_failed_attempt.present? %> + <%= govuk_notification_banner(title_text: "Important") do %> +
+ No changes have been made. Try beginning the merge again. + <% end %> +<% end %> diff --git a/app/views/merge_requests/show.html.erb b/app/views/merge_requests/show.html.erb index e97474cd3..c93e99738 100644 --- a/app/views/merge_requests/show.html.erb +++ b/app/views/merge_requests/show.html.erb @@ -3,24 +3,9 @@ <% content_for :title, title %> <%= govuk_back_link href: organisations_path(anchor: "merge-requests") %> <% end %> -<% unless @merge_request.signed_dsa || @merge_request.absorbing_organisation_id.blank? %> -
-<% end %> + +<%= render partial: "notification_banners" %> +