summaryrefslogtreecommitdiff
path: root/roundcubemail/program
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-08-12 07:11:28 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2010-08-12 07:11:28 +0000
commita09df33cfdea2953dbdcc72f8a33508df8e74ee8 (patch)
treea919f30d2bc9a442cc52cc98413f396b02f2bb80 /roundcubemail/program
parent6d0cdbfded04fc853b9773f1555bbf91a92028e7 (diff)
- add message_part_structure hook also for text parts of mixed messages
git-svn-id: https://svn.roundcube.net/trunk@3892 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program')
-rw-r--r--roundcubemail/program/include/rcube_message.php11
1 files changed, 11 insertions, 0 deletions
diff --git a/roundcubemail/program/include/rcube_message.php b/roundcubemail/program/include/rcube_message.php
index ded019cdd..8ba607ce1 100644
--- a/roundcubemail/program/include/rcube_message.php
+++ b/roundcubemail/program/include/rcube_message.php
@@ -393,6 +393,17 @@ class rcube_message
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']) ||