From 49eed0dc15e03bd562194606b0fdb59b2b584296 Mon Sep 17 00:00:00 2001 From: Chad Little Date: Tue, 13 Sep 2005 21:36:38 +0000 Subject: Updated README, reverted ical_parser's WEEKLY parsing to 2.0b, added charset to event popup, and added two small patches. --- README | 7 ++++++- functions/ical_parser.php | 20 +++++++++----------- includes/event.php | 1 + templates/default/footer.tpl | 2 +- 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/README b/README index 7846907..c030270 100644 --- a/README +++ b/README @@ -81,8 +81,13 @@ COPYING for more information about our license. Changes: -------- -2.0 -Event URLs display without LOCATION. +2.0.1 + -Event URLs display without LOCATION. -Fixed VTIMEZONE dates on Windows IIS. + -Event popup respect CHARSET + -Tabs parsed into   + -Search links work again. + -Weekly repeating events display better. 2.0 c -Enhanced error messaging system. diff --git a/functions/ical_parser.php b/functions/ical_parser.php index 67a1b1f..db57458 100644 --- a/functions/ical_parser.php +++ b/functions/ical_parser.php @@ -517,20 +517,15 @@ foreach ($cal_filelist as $filename) { $recur_data[] = $next_date_time; break; case 'WEEKLY': - // Populate $byday with the default day if it's not set. if (!isset($byday)) { - $byday[] = strtoupper(substr($daysofweekshort_lang[date('w', $next_range_time)], 0, 2)); - } - if (is_array($byday)) { + $next_date = dateOfWeek(date('Ymd', $next_range_time),$bd); + $next_date_time = strtotime($next_date); + $recur_data[] = $next_date_time; + } elseif (is_array($byday)) { foreach($byday as $day) { $day = two2threeCharDays($day); - $next_date_time = strtotime($day,$next_range_time) + (12 * 60 * 60); - // Since this renders events from $next_range_time to $next_range_time + 1 week, I need to handle intervals - // as well. This checks to see if $next_date_time is after $day_start (i.e., "next week"), and thus - // if we need to add $interval weeks to $next_date_time. - if ($next_date_time > strtotime($week_start_day, $next_range_time) && $interval > 1) { - $next_date_time = strtotime('+'.($interval - 1).' '.$freq_type, $next_date_time); - } + $next_date = dateOfWeek(date('Ymd', $next_range_time),$day); + $next_date_time = strtotime($next_date); $recur_data[] = $next_date_time; } } @@ -1045,6 +1040,7 @@ foreach ($cal_filelist as $filename) { case 'SUMMARY': $data = str_replace("\\n", "
", $data); + $data = str_replace("\\t", " ", $data); $data = str_replace("\\r", "
", $data); $data = str_replace('$', '$', $data); $data = htmlentities(urlencode($data)); @@ -1057,6 +1053,7 @@ foreach ($cal_filelist as $filename) { case 'DESCRIPTION': $data = str_replace("\\n", "
", $data); + $data = str_replace("\\t", " ", $data); $data = str_replace("\\r", "
", $data); $data = str_replace('$', '$', $data); $data = htmlentities(urlencode($data)); @@ -1154,6 +1151,7 @@ foreach ($cal_filelist as $filename) { break; case 'LOCATION': $data = str_replace("\\n", "
", $data); + $data = str_replace("\\t", " ", $data); $data = str_replace("\\r", "
", $data); $location = $data; break; diff --git a/includes/event.php b/includes/event.php index 2d2de38..620f22b 100644 --- a/includes/event.php +++ b/includes/event.php @@ -63,6 +63,7 @@ if (sizeof($organizer) == 0) $organizer = ''; $page = new Page(BASE.'templates/'.$template.'/event.tpl'); $page->replace_tags(array( + 'charset' => $charset, 'cal' => $event['calname'], 'event_text' => urldecode($event['event_text']), 'event_times' => $event_times, diff --git a/templates/default/footer.tpl b/templates/default/footer.tpl index e1ff9f6..bd5256e 100644 --- a/templates/default/footer.tpl +++ b/templates/default/footer.tpl @@ -1,4 +1,4 @@ -

{L_POWERED_BY} PHP iCalendar 2.0
+

{L_POWERED_BY} PHP iCalendar 2.0.1

-- cgit v1.2.3