38 (is_null($effectiveStart) ||
$start < $effectiveEnd) &&
39 (is_null($effectiveEnd) ||
$end > $effectiveStart)
58 $effectiveStart =
null;
61 if (isset($this->DTSTART)) {
62 $effectiveStart = $this->DTSTART->getDateTime();
64 if (isset($this->DTEND)) {
65 $effectiveEnd = $this->DTEND->getDateTime();
66 } elseif ($effectiveStart && isset($this->DURATION)) {
70 return [$effectiveStart, $effectiveEnd];
101 'LAST-MODIFIED' =>
'?',
145 if (isset($this->DTEND) && isset($this->DURATION)) {
148 'message' =>
'DTEND and DURATION cannot both be present',
An exception for terminatinating execution or to throw for unit testing.
The VAvailability component.
getEffectiveStartEnd()
Returns the 'effective start' and 'effective end' of this VAVAILABILITY component.
validate($options=0)
Validates the node for correctness.
isInTimeRange(DateTimeInterface $start, DateTimeInterface $end)
Returns true or false depending on if the event falls in the specified time-range.
static parseDuration($duration, $asString=false)
Parses an iCalendar (RFC5545) formatted duration value.