<#list listDays as day>
<#assign currentTime = startingTime /> <#assign currentMinute = startingMinute /> <#assign currentHour = startingHour /> <#if day.listAppointmentResourceDTO?has_content> <#list day.listAppointmentResourceDTO as appointment> <#assign nbOccur = ( ( ( appointment.startingHour * 60 + appointment.startingMinute ) - currentTime ) / duration)?round /> <#if nbOccur > 0> <#list 1..nbOccur as i> <@updateCurrentTimeHourAndMinute durationApp=duration /> <@updateCurrentTimeHourAndMinute durationApp=appointment.duration /> <#else>
#i18n{${list_days_of_week[day_index]}}
${day.date?date}
#i18n{module.appointment.resource.labelNoAppointment}
<#list listDays as day>
<#assign nbOccur = ( ( endingTime - startingTime ) / duration)?round /> <#assign currentTime = startingTime /> <#assign currentMinute = startingMinute /> <#assign currentHour = startingHour /> <#list 1..nbOccur as i>


<#if currentHour < 10>0${currentHour}h<#if currentMinute < 10>0${currentMinute} <@updateCurrentTimeHourAndMinute durationApp=duration />
<#assign currentTime = startingTime /> <#assign currentMinute = startingMinute /> <#assign currentHour = startingHour /> <#list day.listAppointmentResourceDTO as appointment> <#assign nbOccur = ( ( ( appointment.startingHour * 60 + appointment.startingMinute ) - currentTime ) / duration)?round /> <#if nbOccur > 0> <#list 1..nbOccur as i> <@addEmptyLine durationApp=duration /> <#assign rowspan=((appointment.duration)/duration)?round> <@updateCurrentTimeHourAndMinute durationApp=appointment.duration /> <#assign maxTime = endingTime /> <#assign nbOccur = ( ( maxTime - currentTime ) / duration )?round /> <#if nbOccur > 0> <#list 1..nbOccur as i> <@addEmptyLine durationApp=duration/>
#i18n{${list_days_of_week[day_index]}}
${day.date?date}
<@getCellTitle startingHour=appointment.startingHour startingMinute=appointment.startingMinute endingHour=appointment.endingHour endingMinute=appointment.endingMinute appointmentDescription=appointment.appointmentDescription />
<#macro addEmptyLine durationApp> <#assign saveCurrentHour = currentHour /> <#assign saveCurrentMinute = currentMinute /> <@updateCurrentTimeHourAndMinute durationApp=durationApp />   <@getCellTitle startingHour=saveCurrentHour startingMinute=saveCurrentMinute endingHour=currentHour endingMinute=currentMinute appointmentDescription='' /> <#macro updateCurrentTimeHourAndMinute durationApp> <#assign currentTime = currentTime + durationApp /> <#assign currentMinute = currentMinute + durationApp /> <#if currentMinute >= 60> <#assign nbOccursPriv = (currentMinute / 60 )?floor /> <#list 1..nbOccursPriv as i> <#assign currentHour = currentHour + 1 /> <#assign currentMinute = currentMinute % 60 /> <#macro getCellTitle startingHour startingMinute endingHour endingMinute appointmentDescription> <#if startingHour < 10>0${startingHour}h<#if startingMinute < 10>0${startingMinute} - <#if endingHour < 10>0${endingHour}h<#if endingMinute < 10>0${endingMinute} <#if appointmentDescription != ''>
${appointmentDescription}