function availability_month_cell($availability, $activityId, $texts, $module = 'home', $action = 'ganttIndex') { $content = ''; $url = $module . '/' . $action; $tst = $availability->getRaw('timestamp'); $value = $availability->getRaw('value'); $classes = availability_classes($value); $dayStr = strftime('%#d', $availability->getRaw('timestamp')); switch ($value) { case RoomPeer::COMPLETE: $content = sprintf('<span class="hidden">%s</span>', $texts[$value]); break; case RoomPeer::OCCUPIED: $rooms = implode(',', $availability->getRaw('rooms')); $content = link_to($texts[$value], $url . '?date=' . date('Y-m-d', $tst) . '&activityId=' . $activityId . '&rooms=' . $rooms); break; case RoomPeer::FREE: $rooms = implode(',', $availability->getRaw('rooms')); $content = link_to($texts[$value], $url . '?date=' . date('Y-m-d', $tst) . '&activityId=' . $activityId . '&rooms=' . $rooms); break; case RoomPeer::PAST: $content = sprintf('<span class="hidden">%s</span>', $texts[$value]); break; case RoomPeer::TOOFAR: $content = sprintf('<span class="hidden">%s</span>', $texts[$value]); break; } return month_cell($classes, $dayStr, $content); }
for ($day = 0; $day < 7; ++$day) { ?> <?php $tst = strtotime(date('Y-m-d', $monthStart) . ' + ' . ($day + $weekNo * 7) . ' day - ' . $startDayIndex . ' day'); ?> <?php if ($tst >= $monthStart && $tst < $monthStop) { ?> <?php echo availability_month_cell($availability[$day - $startDayIndex + 1 + $weekNo * 7], $activity->getId(), array(RoomPeer::COMPLETE => __('Complete'), RoomPeer::OCCUPIED => __('Other reservation'), RoomPeer::FREE => __('Add a reservation'), RoomPeer::PAST => __('Past'), RoomPeer::TOOFAR => __('Too far in the future'))); ?> <?php } else { ?> <?php echo month_cell(array('empty'), strftime('%#d', $tst), null); ?> <?php } ?> <?php } ?> </tr> <?php } ?> </tbody> </table> <div class="legend">