diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/IMonthlyTimesheetModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/IMonthlyTimesheetModel.java index 4a9b3c464..66d8e6373 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/IMonthlyTimesheetModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/IMonthlyTimesheetModel.java @@ -211,4 +211,10 @@ public interface IMonthlyTimesheetModel { */ PersonalTimesheetsPeriodicityEnum getPersonalTimesheetsPeriodicity(); + /** + * Returns the string that represents the personal timesheet depending on + * the configured periodicity. + */ + String getTimesheetString(); + } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java index 31e2df16a..e60dcdf8c 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetController.java @@ -598,8 +598,8 @@ public class MonthlyTimesheetController extends GenericForwardComposer columns.appendChild(total); } - public String getDate() { - return monthlyTimesheetModel.getDate().toString("MMMM y"); + public String getTimesheetString() { + return monthlyTimesheetModel.getTimesheetString(); } public String getResource() { diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetDTO.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetDTO.java index 10a3cc9ce..c02e0fe20 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetDTO.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetDTO.java @@ -92,13 +92,17 @@ public class MonthlyTimesheetDTO { } public String toString(PersonalTimesheetsPeriodicityEnum periodicity) { + return toString(periodicity, date); + } + + public static String toString(PersonalTimesheetsPeriodicityEnum periodicity, LocalDate date) { switch (periodicity) { case WEEKLY: return _("Week {0}", date.toString("w")); case TWICE_MONTHLY: return (date.getDayOfMonth() <= 15) ? - _("{0} 1st fortnight",date.toString("MMMM")) : - _("{0} 2nd fortnight",date.toString("MMMM")); + _("{0} 1st fortnight", date.toString("MMMM")) : + _("{0} 2nd fortnight", date.toString("MMMM")); case MONTHLY: default: return date.toString("MMMM y"); diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetModel.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetModel.java index de2db7e72..f606fdeeb 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetModel.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/MonthlyTimesheetModel.java @@ -566,4 +566,9 @@ public class MonthlyTimesheetModel implements IMonthlyTimesheetModel { .getPersonalTimesheetsPeriodicity(); } + @Override + public String getTimesheetString() { + return MonthlyTimesheetDTO.toString(periodicity, date); + } + } diff --git a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/UserDashboardController.java b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/UserDashboardController.java index d41f18230..901f6b03d 100644 --- a/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/UserDashboardController.java +++ b/libreplan-webapp/src/main/java/org/libreplan/web/users/dashboard/UserDashboardController.java @@ -23,6 +23,7 @@ import static org.libreplan.web.I18nHelper._; import org.apache.commons.lang.StringUtils; import org.joda.time.LocalDate; +import org.libreplan.business.common.Registry; import org.libreplan.web.common.IMessagesForUser; import org.libreplan.web.common.Level; import org.libreplan.web.common.MessagesForUser; @@ -54,8 +55,11 @@ public class UserDashboardController extends GenericForwardComposer { String timesheetSave = Executions.getCurrent().getParameter( "timesheet_saved"); if (!StringUtils.isBlank(timesheetSave)) { - String monthlyTimesheet = new LocalDate(timesheetSave) - .toString("MMMM y"); + String monthlyTimesheet = MonthlyTimesheetDTO.toString(Registry + .getConfigurationDAO() + .getConfigurationWithReadOnlyTransaction() + .getPersonalTimesheetsPeriodicity(), new LocalDate( + timesheetSave)); messagesForUser.showMessage(Level.INFO, _("Personal timesheet \"{0}\" saved", monthlyTimesheet)); } diff --git a/libreplan-webapp/src/main/webapp/myaccount/monthlyTimesheet.zul b/libreplan-webapp/src/main/webapp/myaccount/monthlyTimesheet.zul index fd379639a..9c67f6619 100644 --- a/libreplan-webapp/src/main/webapp/myaccount/monthlyTimesheet.zul +++ b/libreplan-webapp/src/main/webapp/myaccount/monthlyTimesheet.zul @@ -48,22 +48,22 @@