From d595aaced0c15fbd4beaf6c4c7a57dd010a96278 Mon Sep 17 00:00:00 2001
From: Jennifer Richards <jennifer@staff.ietf.org>
Date: Fri, 26 May 2023 11:28:16 -0300
Subject: [PATCH] fix: Skip title validation if only XML uploaded (#5694)

---
 ietf/submit/utils.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/ietf/submit/utils.py b/ietf/submit/utils.py
index 3f12e50c5..dfc6f2835 100644
--- a/ietf/submit/utils.py
+++ b/ietf/submit/utils.py
@@ -1265,7 +1265,11 @@ def process_and_validate_submission(submission):
         # Parse text, whether uploaded or generated from XML
         text_metadata = process_submission_text(submission.name, submission.rev)
 
-        if xml_metadata and xml_metadata["title"] != text_metadata["title"]:
+        if (
+            ".txt" in submission.file_types
+            and xml_metadata
+            and xml_metadata["title"] != text_metadata["title"]
+        ):
             raise SubmissionError(
                 f"Text Internet-Draft title ({text_metadata['title']}) "
                 f"disagrees with XML Internet-Draft title ({xml_metadata['title']})"
@@ -1275,13 +1279,14 @@ def process_and_validate_submission(submission):
         if xml_metadata is not None:
             # Items preferred / only available from XML
             submission.xml_version = xml_metadata["xml_version"]
+            submission.title = xml_metadata["title"]
             submission.authors = xml_metadata["authors"]
         else:
             # Items to get from text only if XML not available
+            submission.title = text_metadata["title"]
             submission.authors = text_metadata["authors"]
 
         # Items always to get from text, even when XML is available
-        submission.title = text_metadata["title"]  # verified above this agrees with XML, if present
         submission.abstract = text_metadata["abstract"]
         submission.document_date = text_metadata["document_date"]
         submission.pages = text_metadata["pages"]