From d6d02b06e8240493f2bff9a8e1efa1ea88c5860b Mon Sep 17 00:00:00 2001 From: Manuel Rego Casasnovas Date: Mon, 24 Aug 2009 11:11:36 +0200 Subject: [PATCH] ItEr23S08CUEdicionCalendarioLaboral: Checking not negative hours when creating an exception day. --- .../calendars/BaseCalendarCRUDController.java | 24 +++++++++++++++---- .../src/main/webapp/calendars/_edition.zul | 2 +- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/navalplanner-webapp/src/main/java/org/navalplanner/web/calendars/BaseCalendarCRUDController.java b/navalplanner-webapp/src/main/java/org/navalplanner/web/calendars/BaseCalendarCRUDController.java index 00b701557..d8c63ea68 100644 --- a/navalplanner-webapp/src/main/java/org/navalplanner/web/calendars/BaseCalendarCRUDController.java +++ b/navalplanner-webapp/src/main/java/org/navalplanner/web/calendars/BaseCalendarCRUDController.java @@ -16,9 +16,11 @@ import org.navalplanner.web.common.MessagesForUser; import org.navalplanner.web.common.OnlyOneVisible; import org.navalplanner.web.common.Util; import org.zkoss.zk.ui.Component; +import org.zkoss.zk.ui.WrongValueException; import org.zkoss.zk.ui.event.Event; import org.zkoss.zk.ui.event.EventListener; import org.zkoss.zk.ui.event.Events; +import org.zkoss.zk.ui.util.Clients; import org.zkoss.zk.ui.util.GenericForwardComposer; import org.zkoss.zul.Button; import org.zkoss.zul.Checkbox; @@ -208,11 +210,25 @@ public class BaseCalendarCRUDController extends GenericForwardComposer { return baseCalendarModel.getHoursOfDay(); } - public void createException(Integer hours) { - // TODO check hours parameter is >= 0 - baseCalendarModel.createException(hours); + public void createException() { + Component exceptionHoursIntbox; + if (baseCalendarModel.isEditing()) { + exceptionHoursIntbox = editWindow.getFellow("exceptionHours"); + } else { + exceptionHoursIntbox = createWindow.getFellow("exceptionHours"); + } - reloadDayInformation(); + Integer hours = ((Intbox) exceptionHoursIntbox).getValue(); + + if (hours < 0) { + throw new WrongValueException( + exceptionHoursIntbox, + _("Hours for an exception day should be greater or equal than zero")); + } else { + Clients.closeErrorBox(exceptionHoursIntbox); + baseCalendarModel.createException(hours); + reloadDayInformation(); + } } public List getHoursPerDay() { diff --git a/navalplanner-webapp/src/main/webapp/calendars/_edition.zul b/navalplanner-webapp/src/main/webapp/calendars/_edition.zul index 70649aa09..1250e1431 100644 --- a/navalplanner-webapp/src/main/webapp/calendars/_edition.zul +++ b/navalplanner-webapp/src/main/webapp/calendars/_edition.zul @@ -52,7 +52,7 @@