From 1a2f8375ded7563964ea24c44c7874a92e6f7b77 Mon Sep 17 00:00:00 2001 From: alecpl <alec@alec.pl> Date: Thu, 12 Aug 2010 03:11:28 -0400 Subject: [PATCH] - add message_part_structure hook also for text parts of mixed messages --- program/include/rcube_message.php | 13 ++++++++++++- 1 files changed, 12 insertions(+), 1 deletions(-) diff --git a/program/include/rcube_message.php b/program/include/rcube_message.php index 124120b..8ba607c 100644 --- a/program/include/rcube_message.php +++ b/program/include/rcube_message.php @@ -248,7 +248,7 @@ private function parse_structure($structure, $recursive = false) { // real content-type of message/rfc822 part - if ($mimetype == 'message/rfc822' && $structure->real_mimetype) + if ($structure->mimetype == 'message/rfc822' && $structure->real_mimetype) $mimetype = $structure->real_mimetype; else $mimetype = $structure->mimetype; @@ -393,6 +393,17 @@ else if ((($part_mimetype == 'text/plain' || $part_mimetype == 'text/html') && $mail_part->disposition != 'attachment') || $part_mimetype == 'message/delivery-status' || $part_mimetype == 'message/disposition-notification' ) { + // Allow plugins to handle also this part + $plugin = $this->app->plugins->exec_hook('message_part_structure', + array('object' => $this, 'structure' => $mail_part, + 'mimetype' => $part_mimetype, 'recursive' => true)); + + if ($plugin['abort']) + continue; + + $mail_part = $plugin['structure']; + list($primary_type, $secondary_type) = explode('/', $plugin['mimetype']); + // add text part if it matches the prefs if (!$this->parse_alternative || ($secondary_type == 'html' && $this->opt['prefer_html']) || -- Gitblit v1.9.1