From 60fea594ae155e7622be987124f9d0197200d381 Mon Sep 17 00:00:00 2001 From: Andrew McMillan Date: Thu, 7 Oct 2010 14:20:35 -0400 Subject: [PATCH] Handle events which don't have either DTEND *or* DURATION. --- inc/RRule-v2.php | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/inc/RRule-v2.php b/inc/RRule-v2.php index eedb0ca2..db87a12f 100644 --- a/inc/RRule-v2.php +++ b/inc/RRule-v2.php @@ -798,8 +798,18 @@ function expand_event_instances( $vResource, $range_start = null, $range_end = n $instance_start = $comp->GetProperty('DTSTART'); $dtsrt = new RepeatRuleDateTime( $instance_start->Value(), $instance_start->GetParameterValue('TZID')); $instance_end = $comp->GetProperty($end_type); - $dtend = new RepeatRuleDateTime( $instance_end->Value(), $instance_end->GetParameterValue('TZID')); - $duration = $dtstart->RFC5545Duration( $dtend ); + if ( isset($instance_end) ) { + $dtend = new RepeatRuleDateTime( $instance_end->Value(), $instance_end->GetParameterValue('TZID')); + $duration = $dtstart->RFC5545Duration( $dtend ); + } + else { + if ( $instance_start->GetParameterValue('VALUE') == 'DATE' ) { + $duration = 'P1D'; + } + else { + $duration = 'P0D'; // For clarity + } + } } else { $duration = $duration->Value();