Changeset View
Changeset View
Standalone View
Standalone View
plugins/libcalendaring/libvcalendar.php
Show First 20 Lines • Show All 1,347 Lines • ▼ Show 20 Lines | private function _to_ical($event, $vcal, $get_attachment, $recurrence_id = null) | ||||
// append recurrence exceptions | // append recurrence exceptions | ||||
if (!empty($event['recurrence']) && !empty($event['recurrence']['EXCEPTIONS'])) { | if (!empty($event['recurrence']) && !empty($event['recurrence']['EXCEPTIONS'])) { | ||||
foreach ($event['recurrence']['EXCEPTIONS'] as $ex) { | foreach ($event['recurrence']['EXCEPTIONS'] as $ex) { | ||||
$exdate = !empty($ex['recurrence_date']) ? $ex['recurrence_date'] : $ex['start']; | $exdate = !empty($ex['recurrence_date']) ? $ex['recurrence_date'] : $ex['start']; | ||||
$recurrence_id = $this->datetime_prop($cal, 'RECURRENCE-ID', $exdate, false, !empty($event['allday'])); | $recurrence_id = $this->datetime_prop($cal, 'RECURRENCE-ID', $exdate, false, !empty($event['allday'])); | ||||
if (!empty($ex['thisandfuture'])) { | if (!empty($ex['thisandfuture'])) { | ||||
$recurrence_id->add('RANGE', 'THISANDFUTURE'); | $recurrence_id->add('RANGE', 'THISANDFUTURE'); | ||||
} | } | ||||
$ex['uid'] = $ve->UID; | |||||
$this->_to_ical($ex, $vcal, $get_attachment, $recurrence_id); | $this->_to_ical($ex, $vcal, $get_attachment, $recurrence_id); | ||||
} | } | ||||
} | } | ||||
} | } | ||||
/** | /** | ||||
* Returns a VTIMEZONE component for a Olson timezone identifier | * Returns a VTIMEZONE component for a Olson timezone identifier | ||||
* with daylight transitions covering the given date range. | * with daylight transitions covering the given date range. | ||||
▲ Show 20 Lines • Show All 166 Lines • Show Last 20 Lines |