From e35e3319d3a76ba99e87467bc4083c6d4df33c51 Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Tue, 3 Jul 2012 07:51:12 +0200 Subject: [PATCH] i18n: Get week days translation automatically from Java libraries FEA: ItEr76S04BugFixing --- .../calendars/entities/CalendarData.java | 35 ++++++++++--------- .../BaseCalendarEditionController.java | 7 +++- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/libreplan-business/src/main/java/org/libreplan/business/calendars/entities/CalendarData.java b/libreplan-business/src/main/java/org/libreplan/business/calendars/entities/CalendarData.java index 82d31bcf9..4cc7d1dd7 100644 --- a/libreplan-business/src/main/java/org/libreplan/business/calendars/entities/CalendarData.java +++ b/libreplan-business/src/main/java/org/libreplan/business/calendars/entities/CalendarData.java @@ -23,6 +23,8 @@ package org.libreplan.business.calendars.entities; import static org.libreplan.business.workingday.EffortDuration.hours; +import java.text.DateFormatSymbols; +import java.util.Calendar; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; @@ -96,25 +98,26 @@ public class CalendarData extends IntegrationEntity { private BaseCalendar parent; public enum Days { - MONDAY(_("Monday")), TUESDAY(_("Tuesday")), WEDNESDAY(_("Wednesday")), THURSDAY( - _("Thursday")), FRIDAY(_("Friday")), SATURDAY(_("Saturday")), SUNDAY( - _("Sunday")); + MONDAY(Calendar.MONDAY), + TUESDAY(Calendar.TUESDAY), + WEDNESDAY(Calendar.WEDNESDAY), + THURSDAY(Calendar.THURSDAY), + FRIDAY(Calendar.FRIDAY), + SATURDAY(Calendar.SATURDAY), + SUNDAY(Calendar.SUNDAY); + + private int index; + + private Days(int index) { + this.index = index; + } /** - * Forces to mark the string as needing translation + * This is used to get the week day translated via + * {@link DateFormatSymbols#getWeekdays()} */ - private static String _(String string) { - return string; - } - - private String name; - - private Days(String name) { - this.name = name; - } - - public String getName() { - return name; + public int getIndex() { + return index; } } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/calendars/BaseCalendarEditionController.java b/libreplan-webapp/src/main/java/org/libreplan/web/calendars/BaseCalendarEditionController.java index 7088a231d..84754e94e 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/calendars/BaseCalendarEditionController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/calendars/BaseCalendarEditionController.java @@ -24,6 +24,7 @@ package org.libreplan.web.calendars; import static org.libreplan.web.I18nHelper._; import static org.libreplan.web.common.Util.findOrCreate; +import java.text.DateFormatSymbols; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; @@ -58,6 +59,7 @@ import org.libreplan.web.common.Util.ICreation; import org.libreplan.web.common.Util.Setter; import org.libreplan.web.common.components.CapacityPicker; import org.libreplan.web.common.components.EffortDurationPicker; +import org.zkoss.util.Locales; import org.zkoss.zk.au.out.AuInvoke; import org.zkoss.zk.ui.Component; import org.zkoss.zk.ui.WrongValueException; @@ -410,8 +412,11 @@ public abstract class BaseCalendarEditionController extends } private void addLabelCell(Listitem item, final Days day) { + String days[] = DateFormatSymbols.getInstance(Locales.getCurrent()) + .getWeekdays(); + Listcell labelListcell = new Listcell(); - labelListcell.appendChild(new Label(_(day.getName()))); + labelListcell.appendChild(new Label(days[day.getIndex()])); item.appendChild(labelListcell); }