From f82e4c101ff53440659aabadb1e5fa35d437c9dd Mon Sep 17 00:00:00 2001 From: jensp Date: Sun, 14 Apr 2019 15:41:11 +0000 Subject: [PATCH] Bugfix for language handling git-svn-id: https://svn.libreccm.org/ccm/trunk@5945 8810af33-2d31-482b-a856-94f89814c4df --- .../arsdigita/cms/ContentSectionServlet.java | 2 +- .../FreeMarkerPresentationManager.java | 27 ++++++++++++------- 2 files changed, 18 insertions(+), 11 deletions(-) diff --git a/ccm-cms/src/com/arsdigita/cms/ContentSectionServlet.java b/ccm-cms/src/com/arsdigita/cms/ContentSectionServlet.java index ab5812f68..0f89a1144 100755 --- a/ccm-cms/src/com/arsdigita/cms/ContentSectionServlet.java +++ b/ccm-cms/src/com/arsdigita/cms/ContentSectionServlet.java @@ -353,7 +353,7 @@ public class ContentSectionServlet extends BaseApplicationServlet { // } } else { - final String lang = url.substring(url.lastIndexOf(".")); + final String lang = url.substring(url.lastIndexOf(".") + 1); GlobalizationHelper.setSelectedLocale(lang); } } diff --git a/ccm-themedirector/src/org/libreccm/theming/FreeMarkerPresentationManager.java b/ccm-themedirector/src/org/libreccm/theming/FreeMarkerPresentationManager.java index c0695ea07..1166b7d8e 100644 --- a/ccm-themedirector/src/org/libreccm/theming/FreeMarkerPresentationManager.java +++ b/ccm-themedirector/src/org/libreccm/theming/FreeMarkerPresentationManager.java @@ -35,7 +35,6 @@ import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.nio.charset.StandardCharsets; -import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.HashMap; @@ -461,19 +460,26 @@ public class FreeMarkerPresentationManager implements PresentationManager { + "second: int"); } - final String style = ((TemplateScalarModel) list.get(0)) + final String style = ((TemplateScalarModel) list + .get(0)) .getAsString(); - final String yearParam = ((TemplateScalarModel) list.get(1)) + final String yearParam = ((TemplateScalarModel) list + .get(1)) .getAsString(); - final String monthParam = ((TemplateScalarModel) list.get(2)) + final String monthParam = ((TemplateScalarModel) list + .get(2)) .getAsString(); - final String dayOfMonthParam = ((TemplateScalarModel) list.get(3)) + final String dayOfMonthParam = ((TemplateScalarModel) list + .get(3)) .getAsString(); - final String hourParam = ((TemplateScalarModel) list.get(4)) + final String hourParam = ((TemplateScalarModel) list + .get(4)) .getAsString(); - final String minuteParam = ((TemplateScalarModel) list.get(5)) + final String minuteParam = ((TemplateScalarModel) list + .get(5)) .getAsString(); - final String secondParam = ((TemplateScalarModel) list.get(6)) + final String secondParam = ((TemplateScalarModel) list + .get(6)) .getAsString(); final int year = Integer.parseInt(yearParam); @@ -506,8 +512,9 @@ public class FreeMarkerPresentationManager implements PresentationManager { final Optional format = dateFormats .stream() .filter(dateFormat -> dateFormat.getStyle().equals(style)) - .filter(dateFormat -> dateFormat.getLang().equals(locale - .toString())) + .filter( + dateFormat -> dateFormat.getLang().equals(locale.toString()) + ) .map(DateFormat::getFormat) .findAny();