From 323fa20bc89edcd683bef1a170445f681305fc5c Mon Sep 17 00:00:00 2001 From: Aleksander Machniak <alec@alec.pl> Date: Wed, 23 Mar 2016 11:54:31 -0400 Subject: [PATCH] Message/rfc822 attachment preview (#5054) --- program/steps/mail/headers.inc | 32 +++++++++++++++++++------------- 1 files changed, 19 insertions(+), 13 deletions(-) diff --git a/program/steps/mail/headers.inc b/program/steps/mail/headers.inc index 5d071cc..174a5e8 100644 --- a/program/steps/mail/headers.inc +++ b/program/steps/mail/headers.inc @@ -1,11 +1,15 @@ <?php -/* + +/** +-----------------------------------------------------------------------+ | program/steps/mail/headers.inc | | | - | This file is part of the RoundCube Webmail client | - | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland | - | Licensed under the GNU GPL | + | This file is part of the Roundcube Webmail client | + | Copyright (C) 2005-2016, The Roundcube Dev Team | + | | + | Licensed under the GNU General Public License version 3 or | + | any later version with exceptions for skins & plugins. | + | See the README file for a full license statement. | | | | PURPOSE: | | Fetch message headers in raw format for display | @@ -13,17 +17,21 @@ +-----------------------------------------------------------------------+ | Author: Aleksander Machniak <alec@alec.pl> | +-----------------------------------------------------------------------+ - - $Id$ - */ -if ($uid = get_input_value('_uid', RCUBE_INPUT_POST)) -{ - $source = $IMAP->get_raw_headers($uid); +if ($uid = rcube_utils::get_input_value('_uid', rcube_utils::INPUT_POST)) { + if ($pos = strpos($uid, '.')) { + $message = new rcube_message($uid); + $source = $message->get_part_content(substr($uid, $pos + 1)); + $source = substr($source, 0, strpos($source, "\r\n\r\n")); + } + else { + $source = $RCMAIL->storage->get_raw_headers($uid); + } if ($source !== false) { - $source = htmlspecialchars(trim($source)); + $source = trim(rcube_charset::clean($source)); + $source = htmlspecialchars($source); $source = preg_replace( array( '/\n[\t\s]+/', @@ -46,5 +54,3 @@ } exit; - - -- Gitblit v1.9.1