aboutsummaryrefslogtreecommitdiffstats
path: root/week.php
diff options
context:
space:
mode:
authorjwangen <jwangen>2002-10-27 06:16:28 +0000
committerjwangen <jwangen>2002-10-27 06:16:28 +0000
commit004f2c7c85a27d18309e49e7a29de13b53981d42 (patch)
treef15038586c018bce8084639252587678f9a99893 /week.php
parentdc6d8b40debc48b1aeddcd2afa6e50eef4a051c9 (diff)
downloadphpicalendar-004f2c7c85a27d18309e49e7a29de13b53981d42.tar.gz
phpicalendar-004f2c7c85a27d18309e49e7a29de13b53981d42.tar.bz2
phpicalendar-004f2c7c85a27d18309e49e7a29de13b53981d42.zip
Fixed a couple bugs in day and week where events that start before
$day_start wouldn't show and where $day_start that aren't on the hour would break the views
Diffstat (limited to 'week.php')
-rw-r--r--week.php41
1 files changed, 32 insertions, 9 deletions
diff --git a/week.php b/week.php
index 372210c..93baa6a 100644
--- a/week.php
+++ b/week.php
@@ -199,6 +199,11 @@ for ($i=0;$i<7;$i++) {
echo "<tr height=\"" . $gridLength . "\">\n";
echo "<td rowspan=\"" . (60 / $gridLength) . "\" align=\"center\" valign=\"top\" width=\"60\" class=\"timeborder\">$key</td>\n";
echo "<td width=\"1\" height=\"" . $gridLength . "\"></td>\n";
+ } elseif("$cal_time" == "$day_start") {
+ $size_tmp = 60 - (int)substr($cal_time,2,2);
+ echo "<tr height=\"" . $gridLength . "\">\n";
+ echo "<td rowspan=\"" . ($size_tmp / $gridLength) . "\" align=\"center\" valign=\"top\" width=\"60\" class=\"timeborder\">$key</td>\n";
+ echo "<td width=\"1\" height=\"" . $gridLength . "\"></td>\n";
} else {
echo "<tr height=\"" . $gridLength . "\">\n";
@@ -213,12 +218,30 @@ for ($i=0;$i<7;$i++) {
for ($week_loop=0; $week_loop<7; $week_loop++) {
$thisday = date("Ymd", $thisdate);
$dayborder = 0;
+ unset($this_time_arr);
+ if (isset($master_array[$thisday][$cal_time]) && sizeof($master_array[$thisday][$cal_time]) > 0) {
+ $this_time_arr = $master_array[$thisday][$cal_time];
+ }
+
+ if ("$day_start" == "$cal_time" && is_array($master_array[$thisday])) {
+ foreach($master_array[$thisday] as $time_key => $time_arr) {
+ if ((int)$time_key < (int)$cal_time && is_array($time_arr)) {
+ foreach($time_arr as $event_tmp) {
+ if ((int)$event_tmp['event_end'] > (int)$cal_time) {
+ $this_time_arr[] = $event_tmp;
+ }
+ }
+ } else {
+ break;
+ }
+ }
+ }
// check for eventstart
- if (isset($master_array[($thisday)]["$cal_time"]) && sizeof($master_array[($thisday)]["$cal_time"]) > 0) {
- foreach ($master_array[($thisday)]["$cal_time"] as $eventKey => $loopevent) {
- $drawEvent = drawEventTimes ($loopevent["event_start"], $loopevent["event_end"]);
+ if (isset($this_time_arr) && sizeof($this_time_arr) > 0) {
+ foreach ($this_time_arr as $eventKey => $loopevent) {
+ $drawEvent = drawEventTimes ($cal_time, $loopevent["event_end"]);
$j = 0;
while (isset($event_length[$thisday][$j])) {
if ($event_length[$thisday][$j]["state"] == "ended") {
@@ -248,19 +271,19 @@ for ($i=0;$i<7;$i++) {
$emptyWidth = $nbrGridCols[$thisday];
for ($i=0;$i<sizeof($event_length[$thisday]);$i++) {
- //echo $master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["event_text"] . " ind: " . $i . " / anz: " . $event_length[$thisday][$i]["overlap"] . " = " . eventWidth($i,$event_length[$thisday][$i]["overlap"]) . "<br />";
+ //echo $this_time_arr[($event_length[$thisday][$i]["key"])]["event_text"] . " ind: " . $i . " / anz: " . $event_length[$thisday][$i]["overlap"] . " = " . eventWidth($i,$event_length[$thisday][$i]["overlap"]) . "<br />";
$drawWidth = $nbrGridCols[$thisday] / ($event_length[$thisday][$i]["overlap"] + 1);
$emptyWidth = $emptyWidth - $drawWidth;
switch ($event_length[$thisday][$i]["state"]) {
case "begin":
$event_length[$thisday][$i]["state"] = "started";
- $event_text = stripslashes(urldecode($master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["event_text"]));
+ $event_text = stripslashes(urldecode($this_time_arr[($event_length[$thisday][$i]["key"])]["event_text"]));
$event_text = word_wrap($event_text, 25, $week_events_lines);
- $event_text2 = urlencode(addslashes($master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["event_text"]));
- $event_start = strtotime ($master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["event_start"]);
- $event_end = strtotime ($master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["event_end"]);
- $description = urlencode(addslashes($master_array[($thisday)]["$cal_time"][($event_length[$thisday][$i]["key"])]["description"]));
+ $event_text2 = urlencode(addslashes($this_time_arr[($event_length[$thisday][$i]["key"])]["event_text"]));
+ $event_start = strtotime ($this_time_arr[($event_length[$thisday][$i]["key"])]["event_start"]);
+ $event_end = strtotime ($this_time_arr[($event_length[$thisday][$i]["key"])]["event_end"]);
+ $description = urlencode(addslashes($this_time_arr[($event_length[$thisday][$i]["key"])]["description"]));
$event_start = date ($timeFormat, $event_start);
$event_end = date ($timeFormat, $event_end);
$calendar_name2 = urlencode(addslashes($calendar_name));

© 2014-2024 Faster IT GmbH | imprint | privacy policy