From 56becc6916b5bde6a55ee8fdc2a955830e014d8d Mon Sep 17 00:00:00 2001 From: Kristof De Langhe Date: Wed, 30 Oct 2024 16:24:32 +0100 Subject: [PATCH] 119687: Solr date sort field format check fix --- .../main/java/org/dspace/sort/OrderFormatDate.java | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/dspace-api/src/main/java/org/dspace/sort/OrderFormatDate.java b/dspace-api/src/main/java/org/dspace/sort/OrderFormatDate.java index 76f63f1c46a1..ca014a4fa484 100644 --- a/dspace-api/src/main/java/org/dspace/sort/OrderFormatDate.java +++ b/dspace-api/src/main/java/org/dspace/sort/OrderFormatDate.java @@ -21,6 +21,10 @@ public class OrderFormatDate implements OrderFormatDelegate { @Override public String makeSortString(String value, String language) { + if (!isValidDate(value)) { + return null; + } + int padding = 0; int endYearIdx = value.indexOf('-'); @@ -30,18 +34,13 @@ public String makeSortString(String value, String language) { padding = 4 - value.length(); } - String newValue = value; if (padding > 0) { // padding the value from left with 0 so that 87 -> 0087, 687-11-24 // -> 0687-11-24 - newValue = String.format("%1$0" + padding + "d", 0) + return String.format("%1$0" + padding + "d", 0) + value; - } - - if (isValidDate(newValue)) { - return newValue; } else { - return null; + return value; } }