Síguenos en: icono twitter icono facebook

 

Solución al bug del OAMP Calendar Module de Alkacon

El módulo de calendario de Alkacon tiene un bug en el método: public Map getEntriesForDays (startDay Calendar, Calendar endday) de la clase CmsCalendarDisplay por el cual no es capaz de buscar entre dos fechas de distinto año.

El problema viene derivado por una condición en el cual compara dos fechas mirando el día dentro del año. Por ejemplo, le pasamos las fechas: 19/12/2009 y 07/01/10, y el considera que la fecha fin es anterior a la de inicio y se sale del bucle en el que está metido antes de tiempo ya que ejecuta la sentencia break.

 

if (runDay.get(Calendar.YEAR) > endDay.get(Calendar.YEAR)) {
// runDay has reached endDay -> stop loop
break;
}
if (runDay.get(Calendar.DAY_OF_YEAR) > endDay.get(Calendar.DAY_OF_YEAR)) {
// runDay has reached endDay -> stop loop
break;
}

Para solucionarlo, tan solo debemos modificar la condición de la siguiente forma:

 

if(runDay.after(endDay))
{
break;
}

Sergio Raposo Vargas

© OpenCms Hispano - Powered by OpenCms 7.5.2 & Template Saga
logo template Saga