{% block table_day %} {% for i in 0..intervall %} {% if i >= j %} {% set addToDate = "+" ~ i ~ "day" %} {% set curDate = today|date_modify(addToDate) %} {# if there is a change from summer to winter time #} {% if firstWasSummer == 1 and curDate|date('I') == 0 %} {% set curDate = curDate|date_modify("+1 hour") %} {% endif %} {% set tmpDate = curDate|date("Y-m-d") %} {% set periodFilled = 0 %} {% for reservation in reservations %} {# mark the displayed startdate for reservation #} {% if (reservation_date_compare(today, reservation, 'start')) %} {% set startDate = today %} {% else %} {% set startDate = reservation.startdate %} {% endif %} {# mark the displayed enddate for reservation #} {% if (reservation_date_compare(displayEndDate, reservation, 'end')) %} {% set endDate = displayEndDate %} {% else %} {% set endDate = reservation.enddate %} {% endif %} {% if startDate|date('d.m.Y') == curDate|date('d.m.Y') %} {% set periodFilled = 1 %} {% set period = date_difference(startDate|date('d.m.Y'), endDate|date_modify("+1 day")|date('d.m.Y')) %} {% set colspan = (2 * period) - 2 %} {# if we found a reservation for that day, jump in the loop to the enddate of the reservation #} {% set j = i + period %} {% set printSpacerBefore = is_single_reservation_for_day(today, intervall, loop.index0, reservations, 'start') %} {% set printSpacerAfter = is_single_reservation_for_day(today, intervall, loop.index0, reservations, 'end') %} {% if printSpacerBefore %} {% endif %} {# if whe have 2 reservations at one day we must decrase j in order to look at this date twice but only if reservation is not at the end of the displayed period, otherwise we draw two unneeded tds in the last col #} {% if printSpacerAfter != true and date2UTC(reservation.endDate) <= periodEndDate %} {% set j = j - 1 %} {% endif %} {# we have to add one colspan if reservation started earlier or ends later than the displayed period #} {% if date2UTC(reservation.startDate) < periodStartDate %} {% set colspan = colspan + 1 %} {% endif %} {% if date2UTC(reservation.endDate) > periodEndDate %} {% set colspan = colspan + 1 %} {% endif %} {% set letterCount = get_letter_count_for_display(period, intervall) %} {% set name = reservation.booker.salutation ~ " " ~ reservation.booker.lastname %} {% set shortName = name|slice(0, letterCount) %} {% if shortName != name %} {% set shortName = shortName ~ "..." %} {% endif %} {# popover #} {% use 'Reservations/_resevation_popover.html.twig' %}
{{ shortName }}
{% if printSpacerAfter %} {% endif %} {% set emptyTdNr = emptyTdNr + 1 %}{# now we must increase the number #} {% endif %} {% endfor %} {% if reservations|length == 0 or periodFilled == 0 %} {# 50 / (intervall+1) means 100% total width for all cells, 1 day consist of two cells, therefore we have ((100% / 2) = 50 / number of days) for each cell we have to add +1 for the first col (Zimmer) #} {% endif %} {% endif %} {% endfor %} {% endblock %}