* Calendar: fix meeting invitations to allow accept or reject in Outlook (not set "Content-Disposition: attachment" for ical alternative)

This commit is contained in:
Ralf Becker 2015-04-17 14:17:17 +00:00
parent 923789c5e1
commit 2620a1eb55

View File

@ -367,7 +367,7 @@ class egw_mailer extends Horde_Mime_Mail
/** /**
* Adds a string or binary attachment (non-filesystem) to the list. * Adds a string or binary attachment (non-filesystem) to the list.
* *
* "text/calendar; method=..." get automatic detected and added as highes priority alternative, * "text/calendar; method=..." get automatic detected and added as highest priority alternative,
* overwriting evtl. existing html body! * overwriting evtl. existing html body!
* *
* @param string $content String attachment data. * @param string $content String attachment data.
@ -392,10 +392,6 @@ class egw_mailer extends Horde_Mime_Mail
} }
$part->setCharset('utf-8'); $part->setCharset('utf-8');
$part->setContents($content); $part->setContents($content);
// this should not be necessary, because binary data get detected by mime-type,
// but at least Cyrus complains about NUL characters
$part->setTransferEncoding('base64', array('send' => true));
$part->setName($filename);
// store "text/calendar" as _htmlBody, to trigger "multipart/alternative" // store "text/calendar" as _htmlBody, to trigger "multipart/alternative"
if (stripos($type,"text/calendar; method=") !== false) if (stripos($type,"text/calendar; method=") !== false)
@ -403,6 +399,10 @@ class egw_mailer extends Horde_Mime_Mail
$this->_htmlBody = $part; $this->_htmlBody = $part;
return; return;
} }
// this should not be necessary, because binary data get detected by mime-type,
// but at least Cyrus complains about NUL characters
$part->setTransferEncoding('base64', array('send' => true));
$part->setName($filename);
$part->setDisposition('attachment'); $part->setDisposition('attachment');
return $this->addMimePart($part); return $this->addMimePart($part);