|
|
|
|
@ -159,7 +159,35 @@ class IMipService {
|
|
|
|
|
if ($eventReaderCurrent->recurs()) {
|
|
|
|
|
$data['meeting_occurring'] = $this->generateOccurringString($eventReaderCurrent);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @param VEvent $vEvent
|
|
|
|
|
* @return array
|
|
|
|
|
*/
|
|
|
|
|
public function buildReplyBodyData(VEvent $vEvent): array {
|
|
|
|
|
// construct event reader
|
|
|
|
|
$eventReader = new EventReader($vEvent);
|
|
|
|
|
$defaultVal = '';
|
|
|
|
|
$data = [];
|
|
|
|
|
$data['meeting_when'] = $this->generateWhenString($eventReader);
|
|
|
|
|
|
|
|
|
|
foreach (self::STRING_DIFF as $key => $property) {
|
|
|
|
|
$data[$key] = self::readPropertyWithDefault($vEvent, $property, $defaultVal);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (($locationHtml = $this->linkify($data['meeting_location'])) !== null) {
|
|
|
|
|
$data['meeting_location_html'] = $locationHtml;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$data['meeting_url_html'] = $data['meeting_url'] ? sprintf('<a href="%1$s">%1$s</a>', $data['meeting_url']) : '';
|
|
|
|
|
|
|
|
|
|
// generate occurring next string
|
|
|
|
|
if ($eventReader->recurs()) {
|
|
|
|
|
$data['meeting_occurring'] = $this->generateOccurringString($eventReader);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return $data;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|