private function day_view() { $today = date("j-m-Y"); $today_datetime_handler = new DatetimeHandler($today); if (!$_GET['page']) { $date = date("j-m-Y"); } else { $date = $_GET['page']; } $datetime_handler = new DatetimeHandler($date); $datetime_handler->add_hour(6); $next_day_datetime_handler = clone $datetime_handler; $next_day_datetime_handler->add_day(1); $prev_day_datetime_handler = clone $datetime_handler; $prev_day_datetime_handler->sub_day(1); $mktime = $datetime_handler->get_mktime(); $day = date("jS", $mktime); $month = date("m", $mktime); $month_name = date("F", $mktime); $year = date("Y", $mktime); $color_count = 1; $date_array = $this->mktime_has_date($mktime, $mktime + 86399); $rows = count($date_array); $column_array = array(); $column_array_count = 0; if ($datetime_handler->get_formatted_string("Y-m-d") == $today_datetime_handler->get_formatted_string("Y-m-d")) { $display_date = "<span class='CalendarToday'>" . $datetime_handler->get_formatted_string("l jS F Y") . "</span>"; } else { $display_date = $datetime_handler->get_formatted_string("l jS F Y"); } for ($i = 0; $i <= 17; $i++) { $mktime = $datetime_handler->get_mktime(); $date_array = $this->mktime_has_date($mktime, $mktime + 3599); if (is_array($date_array) and count($date_array >= 1)) { foreach ($date_array as $key => $value) { if (!in_array($value, $column_array)) { if ($this->calendar_array[$value]['link']) { $content_array[$i][$column_array_count]['name'] = "<a href='index.php?" . $this->calendar_array[$value]['link'] . "'>" . $this->calendar_array[$value]['name'] . "</a>"; } else { $content_array[$i][$column_array_count]['name'] = $this->calendar_array[$value]['name']; } $content_array[$i][$column_array_count]['value'] = $this->calendar_array[$value]['color']; $content_array[$i][$column_array_count]['datebegin'] = true; $start_datetime_handler = new DatetimeHandler($this->calendar_array[$value]['start_date'] . " " . $this->calendar_array[$value]['start_time']); $end_datetime_handler = new DatetimeHandler($this->calendar_array[$value]['end_date'] . " " . $this->calendar_array[$value]['end_time']); $content_array[$i][$column_array_count]['range'] = $start_datetime_handler->get_formatted_string("j-n-Y (H:i)") . " - " . $end_datetime_handler->get_formatted_string("j-n-Y (H:i)"); $column_array_count++; array_push($column_array, $value); } } for ($j = 0; $j <= $rows - 1; $j++) { if (!$content_array[$i][$j]['content']) { if (isset($column_array[$j]) and in_array($column_array[$j], $date_array)) { $content_array[$i][$j]['value'] = $this->calendar_array[$column_array[$j]]['color']; if ($content_array[$i][$j]['datebegin'] != true) { $content_array[$i][$j]['datebegin'] = false; } } else { $content_array[$i][$j]['value'] = ""; $content_array[$i][$j]['datebegin'] = false; } } } } else { $content_array[$i][0]['datebegin'] = false; $content_array[$i][0]['value'] = ""; } $content_array[$i]['time'] = $datetime_handler->get_formatted_string("H:i"); $datetime_handler->add_hour(1); if ($color_count % 2) { $tr_class = " class='CalendarTrGrey'"; } else { $tr_class = ""; } $content_array[$i]['tr_class'] = $tr_class; $color_count++; } $template = new HTMLTemplate("organiser/views/day.html"); $paramquery_prev = $_GET; $paramquery_prev['page'] = date("j-m-Y", $prev_day_datetime_handler->get_mktime()); $params_prev = http_build_query($paramquery_prev, '', '&'); $paramquery_next = $_GET; $paramquery_next['page'] = date("j-m-Y", $next_day_datetime_handler->get_mktime()); $params_next = http_build_query($paramquery_next, '', '&'); $template->set_var("previous_params", $params_prev); $template->set_var("next_params", $params_next); $template->set_var("date", $display_date); $template->set_var("content_array", $content_array); return $template->get_string(); }