Example #1
0
 /**
  * Generate a table cell for a single day.
  *
  * @todo Validate reservations are shown correctly for overlapping
  *        reservation dates.
  *
  * @since 0.1.0
  * @access protected
  *
  * @param \DateTime $date Datetime for the day to generate.
  *
  * @return String
  */
 protected function generateDayCell(\DateTime $date, $weekdayNum)
 {
     $day = $date->format('d');
     $dayReserved = $this->reservable->isDayReserved($date, false);
     if (!$dayReserved) {
         return '<td class="single-day"><span class="day-num">' . $day . '</span></td>';
     }
     $reservations = $this->reservable->getReservationsForDate($date);
     $reservationLabel = $this->generateDayCellReservationsData($reservations, $date, $weekdayNum);
     $dayNum = sprintf('<span class="day-num">%s</span>', $day);
     $tdClasses[] = 'single-day';
     return sprintf('<td class="%s">%s %s</td>', implode(' ', $tdClasses), $dayNum, $reservationLabel);
 }