This is an automated email from the ASF dual-hosted git repository. solomax pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/openmeetings.git
The following commit(s) were added to refs/heads/master by this push: new 65d4980 [OPENMEETINGS-2334] hopefuly date/time parsing should be fixed 65d4980 is described below commit 65d4980c824f95dd7cc6f12c142dbc2d12a92b4d Author: Maxim Solodovnik <solomax...@gmail.com> AuthorDate: Fri May 1 21:55:02 2020 +0700 [OPENMEETINGS-2334] hopefuly date/time parsing should be fixed --- .../web/common/AbstractOmDateTimePicker.java | 2 +- .../openmeetings/web/common/OmDateTimePicker.java | 2 +- .../src/main/webapp/css/raw-general.css | 1 - .../org/apache/openmeetings/util/TestDateTime.java | 23 ++++++++++++++++++++++ 4 files changed, 25 insertions(+), 3 deletions(-) diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/AbstractOmDateTimePicker.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/AbstractOmDateTimePicker.java index a81057e..062da09 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/AbstractOmDateTimePicker.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/AbstractOmDateTimePicker.java @@ -40,7 +40,7 @@ public abstract class AbstractOmDateTimePicker<T> extends AbstractDateTimePicker public AbstractOmDateTimePicker(String id, IModel<T> model, String format) { super(id, model, new DatetimePickerConfig() - .useLocale(WebSession.get().getLocale().toLanguageTag()) + //.useLocale(WebSession.get().getLocale().toLanguageTag()) .withFormat(format) .with(new DatetimePickerIconConfig() .useDateIcon(FontAwesome5IconType.calendar_s) diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmDateTimePicker.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmDateTimePicker.java index 062cd4d..d1bd393 100644 --- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmDateTimePicker.java +++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/common/OmDateTimePicker.java @@ -48,7 +48,7 @@ public class OmDateTimePicker extends AbstractOmDateTimePicker<LocalDateTime> { return new DateTimeFormatterBuilder() .parseCaseInsensitive() .appendPattern(pattern) - .toFormatter(locale); + .toFormatter(Locale.ENGLISH); } }; } diff --git a/openmeetings-web/src/main/webapp/css/raw-general.css b/openmeetings-web/src/main/webapp/css/raw-general.css index f25dc9a..b5d9c34 100644 --- a/openmeetings-web/src/main/webapp/css/raw-general.css +++ b/openmeetings-web/src/main/webapp/css/raw-general.css @@ -493,7 +493,6 @@ select.messages.selector { } .date.time.picker { font-size: 12px; - white-space: nowrap; } .profile .remove { position: absolute; diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/util/TestDateTime.java b/openmeetings-web/src/test/java/org/apache/openmeetings/util/TestDateTime.java index 5aa3d8f..ac9120d 100644 --- a/openmeetings-web/src/test/java/org/apache/openmeetings/util/TestDateTime.java +++ b/openmeetings-web/src/test/java/org/apache/openmeetings/util/TestDateTime.java @@ -18,11 +18,13 @@ */ package org.apache.openmeetings.util; +import static org.junit.Assert.assertNotNull; import static org.junit.jupiter.api.Assertions.assertEquals; import java.text.SimpleDateFormat; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeFormatterBuilder; import java.util.Calendar; import java.util.Date; import java.util.Locale; @@ -50,4 +52,25 @@ public class TestDateTime { , DateTimeFormatter.ofPattern(pattern.replace("y", "yy"), loc)); assertEquals(2019, dt.getYear(), "4 digit year expected"); } + + @Test + public void test2() throws Exception { + final String dateStr = "2020-05-12, 6:43 a.m."; + final String jsDateStr = "2020-05-12, 6:43 AM"; + final String pattern = "y-MM-dd, h:mm a"; + final Locale loc = new Locale.Builder() + .setLanguage("en") + .setRegion("CA") + .build(); + DateTimeFormatter formatter = new DateTimeFormatterBuilder() + .parseCaseInsensitive() + .appendPattern(pattern) + .toFormatter(loc); + assertNotNull(formatter.parse(dateStr)); + DateTimeFormatter formatter1 = new DateTimeFormatterBuilder() + .parseCaseInsensitive() + .appendPattern(pattern) + .toFormatter(Locale.ENGLISH); + assertNotNull(formatter1.parse(jsDateStr)); + } }