* Mail: display event-invitation if it contains an attachment (eg. agenda)

This commit is contained in:
Ralf Becker 2017-06-12 14:39:08 +02:00
parent 9f28be8f75
commit e2883e2387

View File

@ -4579,10 +4579,11 @@ class Mail
* @param Horde_Mime_Part $_structure = '' if given use structure for parsing * @param Horde_Mime_Part $_structure = '' if given use structure for parsing
* @param string $_htmlMode how to display a message, html, plain text, ... * @param string $_htmlMode how to display a message, html, plain text, ...
* @param boolean $_preserveSeen flag to preserve the seenflag by using body.peek * @param boolean $_preserveSeen flag to preserve the seenflag by using body.peek
* @param array &$skipParts - passed by reference to have control/knowledge which parts are already fetched * @param array& $skipParts - passed by reference to have control/knowledge which parts are already fetched
* @param Horde_Mime_Part& $partCalendar =null on return text/calendar part, if one was contained or false
* @return array containing the desired part * @return array containing the desired part
*/ */
function getMultipartMixed($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$skipParts=array()) function getMultipartMixed($_uid, Horde_Mime_Part $_structure, $_htmlMode, $_preserveSeen = false, &$skipParts=array(), &$partCalendar=null)
{ {
if (self::$debug) echo __METHOD__."$_uid, $_htmlMode<br>"; if (self::$debug) echo __METHOD__."$_uid, $_htmlMode<br>";
$bodyPart = array(); $bodyPart = array();
@ -4616,11 +4617,11 @@ class Mail
switch($part->getSubType()) switch($part->getSubType())
{ {
case 'alternative': case 'alternative':
return array($this->getMultipartAlternative($_uid, $part, $_htmlMode, $_preserveSeen)); return array($this->getMultipartAlternative($_uid, $part, $_htmlMode, $_preserveSeen, $partCalendar));
case 'mixed': case 'mixed':
case 'signed': case 'signed':
$bodyPart = array_merge($bodyPart, $this->getMultipartMixed($_uid, $part, $_htmlMode, $_preserveSeen, $skipParts)); $bodyPart = array_merge($bodyPart, $this->getMultipartMixed($_uid, $part, $_htmlMode, $_preserveSeen, $skipParts, $partCalendar));
break; break;
case 'related': case 'related':
@ -4890,7 +4891,8 @@ class Mail
case 'report': case 'report':
case 'signed': case 'signed':
case 'encrypted': case 'encrypted':
$bodyParts = $this->getMultipartMixed($_uid, $_structure, $this->htmlOptions, $_preserveSeen); $skipParts = array();
$bodyParts = $this->getMultipartMixed($_uid, $_structure, $this->htmlOptions, $_preserveSeen, $skipParts, $calendar_part);
break; break;
case 'related': case 'related':