{{ $start := .Get 0 }} {{ $end := .Get 1}} {{ $days := after 2 .Params }} {{ $calendar := $.Site.Data.calendar.calendar }} <table class="calendar-manual"> <tr> <th></th> {{ range $days }} <th colspan="3" class="day-title">{{ . }}</th> {{ end }} <th></th> </tr> <tr> <th></th> {{ range $days }} <th class="first-col-of-room">vorne</th> <th>mitte</th> <th>hinten</th> {{ end }} <th></th> </tr> {{ range seq $start $end }} {{ $hour := . }} {{ range seq 0 15 45 }} {{ $firstMin := "" }} {{ if eq . 0 }} {{ $firstMin = "first-min" }} {{ end }} <tr class="{{ $firstMin }}"> {{ $time := printf "%2d:%02d" $hour . }} {{ if or (eq . 0) (eq . 30) }} <td rowspan="2" class="time">{{ $time }}</td> {{ end }} {{ range $days }} {{ $day := . }} {{ $firstRoom := true }} {{ range slice "vorne" "mitte" "hinten" }} {{ $room := . }} {{ $addClass := "" }} {{ if $firstRoom }} {{ $addClass = "first-col-of-room" }} {{ $firstRoom = false }} {{ end }} {{ with index (index (index $calendar .) $day) $time }} <td class="calendar-block {{ $addClass }}"> <div class="calendar-block-entity height-{{ .slots }}"> <div class="room-block room-{{ $room }}"> {{ .title }} </div> </div> </td> {{ else }} <td class="{{ $addClass }}"></td> {{ end }} {{ end }} {{ end }} {{ if or (eq . 0) (eq . 30) }} {{ $time := printf "%2d.%02d" $hour . }} <td rowspan="2" class="time">{{ $time }}</td> {{ end }} </tr> {{ end }} {{ end }} </table>