allow you to update a target event and later.
@@ -305,6 +305,52 @@ | ||
305 | 305 | } |
306 | 306 | |
307 | 307 | @Execute(validator = true, input = "edit.jsp") |
308 | + public String updateitandlater() { | |
309 | + if (!SchedulerUtil.compare(repeatScheduleForm.getStartDate(), | |
310 | + repeatScheduleForm.getStartTime(), repeatScheduleForm | |
311 | + .getEndDate(), repeatScheduleForm.getEndTime())) { | |
312 | + throw new ActionMessagesException("errors.invalid_end_date"); | |
313 | + } | |
314 | + try { | |
315 | + int ty = Integer.parseInt(repeatScheduleForm.tYear); | |
316 | + int tm = Integer.parseInt(repeatScheduleForm.tMonth); | |
317 | + int td = Integer.parseInt(repeatScheduleForm.tDate); | |
318 | + Date d1 = DateUtil.get(ty - 1900, tm - 1, td - 1); | |
319 | + EventSchedule prevEventSchedule = getEventSchedule(); | |
320 | + prevEventSchedule.setEndDate(d1); | |
321 | + repeatScheduleService.store(prevEventSchedule); | |
322 | + | |
323 | + repeatScheduleForm.mode = CommonConstants.CREATE_MODE; | |
324 | + Date d2 = DateUtil.get(ty - 1900, tm - 1, td); | |
325 | + EventSchedule eventSchedule = createEventSchedule(); | |
326 | + eventSchedule.setStartDate(d2); | |
327 | + eventSchedule.setParentId(prevEventSchedule.getId()); | |
328 | + repeatScheduleService.store(eventSchedule); | |
329 | + | |
330 | + SAStrutsUtil.addMessage(request, | |
331 | + "success.update_eventSchedule_and_later"); | |
332 | + | |
333 | + repeatScheduleForm.id = eventSchedule.getId().toString(); | |
334 | + | |
335 | + repeatScheduleForm.mode = CommonConstants.CONFIRM_MODE; | |
336 | + | |
337 | + // update edit page | |
338 | + loadDetailsPageParameters(); | |
339 | + | |
340 | + loadEventSchedule(); | |
341 | + | |
342 | + return "confirm.jsp"; | |
343 | + } catch (ActionMessagesException e) { | |
344 | + log.error(e.getMessage(), e); | |
345 | + throw e; | |
346 | + } catch (Exception e) { | |
347 | + log.error(e.getMessage(), e); | |
348 | + throw new ActionMessagesException( | |
349 | + "errors.failed_to_update_eventSchedule"); | |
350 | + } | |
351 | + } | |
352 | + | |
353 | + @Execute(validator = true, input = "edit.jsp") | |
308 | 354 | public String update() { |
309 | 355 | if (!SchedulerUtil.compare(repeatScheduleForm.getStartDate(), |
310 | 356 | repeatScheduleForm.getStartTime(), repeatScheduleForm |
@@ -598,6 +644,15 @@ | ||
598 | 644 | return eventSchedule; |
599 | 645 | } |
600 | 646 | |
647 | + private EventSchedule getEventSchedule() { | |
648 | + String userId = request.getRemoteUser(); | |
649 | + EventSchedule eventSchedule = repeatScheduleService.getEventSchedule( | |
650 | + Long.parseLong(repeatScheduleForm.id), null); | |
651 | + eventSchedule.setUpdatedBy(userId); | |
652 | + | |
653 | + return eventSchedule; | |
654 | + } | |
655 | + | |
601 | 656 | private EventSchedule createDeletedEventSchedule(EventSchedule eventSchedule) { |
602 | 657 | String userId = request.getRemoteUser(); |
603 | 658 | EventSchedule deletedEventSchedule = new EventSchedule(); |
@@ -298,6 +298,52 @@ | ||
298 | 298 | } |
299 | 299 | |
300 | 300 | @Execute(validator = true, input = "edit.jsp") |
301 | + public String updateitandlater() { | |
302 | + if (!SchedulerUtil.compare(repeatScheduleForm.getStartDate(), | |
303 | + repeatScheduleForm.getStartTime(), repeatScheduleForm | |
304 | + .getEndDate(), repeatScheduleForm.getEndTime())) { | |
305 | + throw new ActionMessagesException("errors.invalid_end_date"); | |
306 | + } | |
307 | + try { | |
308 | + int ty = Integer.parseInt(repeatScheduleForm.tYear); | |
309 | + int tm = Integer.parseInt(repeatScheduleForm.tMonth); | |
310 | + int td = Integer.parseInt(repeatScheduleForm.tDate); | |
311 | + Date d1 = DateUtil.get(ty - 1900, tm - 1, td - 1); | |
312 | + EventSchedule prevEventSchedule = getEventSchedule(); | |
313 | + prevEventSchedule.setEndDate(d1); | |
314 | + repeatScheduleService.store(prevEventSchedule); | |
315 | + | |
316 | + repeatScheduleForm.mode = CommonConstants.CREATE_MODE; | |
317 | + Date d2 = DateUtil.get(ty - 1900, tm - 1, td); | |
318 | + EventSchedule eventSchedule = createEventSchedule(); | |
319 | + eventSchedule.setStartDate(d2); | |
320 | + eventSchedule.setParentId(prevEventSchedule.getId()); | |
321 | + repeatScheduleService.store(eventSchedule); | |
322 | + | |
323 | + SAStrutsUtil.addMessage(request, | |
324 | + "success.update_eventSchedule_and_later"); | |
325 | + | |
326 | + repeatScheduleForm.id = eventSchedule.getId().toString(); | |
327 | + | |
328 | + repeatScheduleForm.mode = CommonConstants.CONFIRM_MODE; | |
329 | + | |
330 | + // update edit page | |
331 | + loadDetailsPageParameters(); | |
332 | + | |
333 | + loadEventSchedule(); | |
334 | + | |
335 | + return "confirm.jsp"; | |
336 | + } catch (ActionMessagesException e) { | |
337 | + log.error(e.getMessage(), e); | |
338 | + throw e; | |
339 | + } catch (Exception e) { | |
340 | + log.error(e.getMessage(), e); | |
341 | + throw new ActionMessagesException( | |
342 | + "errors.failed_to_update_eventSchedule"); | |
343 | + } | |
344 | + } | |
345 | + | |
346 | + @Execute(validator = true, input = "edit.jsp") | |
301 | 347 | public String update() { |
302 | 348 | if (!SchedulerUtil.compare(repeatScheduleForm.getStartDate(), |
303 | 349 | repeatScheduleForm.getStartTime(), repeatScheduleForm |
@@ -590,6 +636,15 @@ | ||
590 | 636 | return eventSchedule; |
591 | 637 | } |
592 | 638 | |
639 | + private EventSchedule getEventSchedule() { | |
640 | + String userId = request.getRemoteUser(); | |
641 | + EventSchedule eventSchedule = repeatScheduleService.getEventSchedule( | |
642 | + Long.parseLong(repeatScheduleForm.id), null); | |
643 | + eventSchedule.setUpdatedBy(userId); | |
644 | + | |
645 | + return eventSchedule; | |
646 | + } | |
647 | + | |
593 | 648 | private EventSchedule createDeletedEventSchedule(EventSchedule eventSchedule) { |
594 | 649 | String userId = request.getRemoteUser(); |
595 | 650 | EventSchedule deletedEventSchedule = new EventSchedule(); |