* Calendar/CalDAV: fix Outlook does not import invitations with wired error "organizer needs not to send responses"

caused by new Horde Icalendar class exporting all integer x-properties as empty string, casting X-EGROUPWARE-UID not explicit to string before passing it to Horde code
This commit is contained in:
Ralf Becker 2015-09-28 08:11:31 +00:00
parent 3bc2e1077c
commit 9fce06e650

View File

@ -459,7 +459,7 @@ class calendar_ical extends calendar_boupdate
$organizerURL = $participantURL; $organizerURL = $participantURL;
$rsvp = ''; $rsvp = '';
$organizerCN = $participantCN; $organizerCN = $participantCN;
$organizerUID = ($info['type'] != 'e' ? $uid : ''); $organizerUID = ($info['type'] != 'e' ? (string)$uid : '');
} }
// PARTSTAT={NEEDS-ACTION|ACCEPTED|DECLINED|TENTATIVE|DELEGATED|COMPLETED|IN-PROGRESS} everything from delegated is NOT used by eGW atm. // PARTSTAT={NEEDS-ACTION|ACCEPTED|DECLINED|TENTATIVE|DELEGATED|COMPLETED|IN-PROGRESS} everything from delegated is NOT used by eGW atm.
$status = $this->status_egw2ical[$status]; $status = $this->status_egw2ical[$status];
@ -480,7 +480,7 @@ class calendar_ical extends calendar_boupdate
'PARTSTAT' => 'NEEDS-ACTION', 'PARTSTAT' => 'NEEDS-ACTION',
'CUTYPE' => 'INDIVIDUAL', 'CUTYPE' => 'INDIVIDUAL',
'RSVP' => 'TRUE', 'RSVP' => 'TRUE',
'X-EGROUPWARE-UID' => $this->user, 'X-EGROUPWARE-UID' => (string)$this->user,
); );
$event['participants'][$this->user] = true; $event['participants'][$this->user] = true;
} }
@ -517,8 +517,8 @@ class calendar_ical extends calendar_boupdate
{ {
$options['EMAIL'] = $info['email']; // only add EMAIL attribute, if not already URL, as eg. Akonadi is reported to have problems with it $options['EMAIL'] = $info['email']; // only add EMAIL attribute, if not already URL, as eg. Akonadi is reported to have problems with it
} }
if ($info['type'] != 'e') $options['X-EGROUPWARE-UID'] = $uid; if ($info['type'] != 'e') $options['X-EGROUPWARE-UID'] = (string)$uid;
if ($quantity > 1) $options['X-EGROUPWARE-QUANTITY'] = $quantity; if ($quantity > 1) $options['X-EGROUPWARE-QUANTITY'] = (string)$quantity;
$attributes['ATTENDEE'][] = $participantURL; $attributes['ATTENDEE'][] = $participantURL;
$parameters['ATTENDEE'][] = $options; $parameters['ATTENDEE'][] = $options;
} }