From 851ea910894ec198335d6390e22247ab021678a6 Mon Sep 17 00:00:00 2001
From: codycooperross <50597551+codycooperross@users.noreply.github.com>
Date: Tue, 7 Jan 2025 17:31:43 -0500
Subject: [PATCH] Move checks for schemaVersion outside of
 params_have_metadata_attributes? since it's set earlier in the cleanse method

---
 app/lib/params_sanitizer.rb | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/app/lib/params_sanitizer.rb b/app/lib/params_sanitizer.rb
index 5e3d91be1..3960758a5 100644
--- a/app/lib/params_sanitizer.rb
+++ b/app/lib/params_sanitizer.rb
@@ -283,9 +283,9 @@ def cleanse
     add_random_id
 
     # replace DOI, but otherwise don't touch the XML
-    if meta["from"] == "datacite" && !params_have_metadata_attributes?
+    if meta["from"] == "datacite" && !params_have_metadata_attributes? && !@params[:schemaVersion].present?
       xml = replace_doi(xml, doi: @params[:doi] || meta["doi"])
-    elsif xml.present? || params_have_metadata_attributes?
+    elsif xml.present? || params_have_metadata_attributes? || @params[:schemaVersion].present?
       regenerate = true
     end
 
@@ -362,7 +362,6 @@ def params_have_metadata_attributes?
       :rightsList,
       :subjects,
       :contentUrl,
-      :schemaVersion
     ].any? { |key| @params.has_key?(key) }
   end