| | |
| | | $p->ctype_primary = 'text'; |
| | | $p->ctype_secondary = 'plain'; |
| | | $p->body = rcube_label('encryptedmessage'); |
| | | $p->size = strlen($p->body); |
| | | |
| | | $this->parts[] = $p; |
| | | // maybe some plugins are able to decode this encrypted message part |
| | | $data = $this->app->plugins->exec_hook('message_part_encrypted', array('object' => $this, 'struct' => $structure, 'part' => $p)); |
| | | if (is_array($data['parts'])) { |
| | | $this->parts = array_merge($this->parts, $data['parts']); |
| | | } |
| | | else if ($data['part']) { |
| | | $this->parts[] = $p; |
| | | } |
| | | } |
| | | // message contains multiple parts |
| | | else if (is_array($structure->parts) && !empty($structure->parts)) { |
| | |
| | | if ($message_ctype_secondary == 'appledouble' && $secondary_type == 'applefile') |
| | | continue; |
| | | |
| | | // part belongs to a related message |
| | | if ($message_ctype_secondary == 'related') { |
| | | // part belongs to a related message and is linked |
| | | if ($message_ctype_secondary == 'related' |
| | | && ($mail_part->headers['content-id'] || $mail_part->headers['content-location'])) { |
| | | if ($mail_part->headers['content-id']) |
| | | $mail_part->content_id = preg_replace(array('/^</', '/>$/'), '', $mail_part->headers['content-id']); |
| | | if ($mail_part->headers['content-location']) |
| | | $mail_part->content_location = $mail_part->headers['content-base'] . $mail_part->headers['content-location']; |
| | | |
| | | if ($mail_part->content_id || $mail_part->content_location) { |
| | | $this->inline_parts[] = $mail_part; |
| | | } |
| | | |
| | | $this->inline_parts[] = $mail_part; |
| | | } |
| | | // is a regular attachment |
| | | else { |