summaryrefslogtreecommitdiff
path: root/program/steps/mail/func.inc
diff options
context:
space:
mode:
authorthomascube <thomas@roundcube.net>2011-12-12 21:30:04 +0000
committerthomascube <thomas@roundcube.net>2011-12-12 21:30:04 +0000
commitfaea23d0b4b0e86955dc5d11afd4311bbeefc052 (patch)
treeb8a2f016b86497f8ea9d4847579e2eb8bdc5e389 /program/steps/mail/func.inc
parentc7dcb30025c184c1e02a2e859b2f10f874c479f6 (diff)
More options for message headers output in templates
Diffstat (limited to 'program/steps/mail/func.inc')
-rw-r--r--program/steps/mail/func.inc10
1 files changed, 9 insertions, 1 deletions
diff --git a/program/steps/mail/func.inc b/program/steps/mail/func.inc
index 5f36da9a9..fd0bd453f 100644
--- a/program/steps/mail/func.inc
+++ b/program/steps/mail/func.inc
@@ -890,6 +890,7 @@ function rcmail_message_headers($attrib, $headers=NULL)
// show these headers
$standard_headers = array('subject', 'from', 'to', 'cc', 'bcc', 'replyto',
'mail-reply-to', 'mail-followup-to', 'date');
+ $exclude_headers = $attrib['exclude'] ? explode(',', $attrib['exclude']) : array();
$output_headers = array();
foreach ($standard_headers as $hkey) {
@@ -900,6 +901,9 @@ function rcmail_message_headers($attrib, $headers=NULL)
else
continue;
+ if (in_array($hkey, $exclude_headers))
+ continue;
+
if ($hkey == 'date') {
if ($PRINT_MODE)
$header_value = format_date($value, $RCMAIL->config->get('date_long', 'x'));
@@ -937,7 +941,11 @@ function rcmail_message_headers($attrib, $headers=NULL)
}
$plugin = $RCMAIL->plugins->exec_hook('message_headers_output',
- array('output' => $output_headers, 'headers' => $MESSAGE->headers));
+ array('output' => $output_headers, 'headers' => $MESSAGE->headers, 'exclude' => $exclude_headers));
+
+ // single header value is requested
+ if (!empty($attrib['valueof']))
+ return Q($plugin['output'][$attrib['valueof']]['value'], ($hkey == 'subject' ? 'strict' : 'show'));
// compose html table
$table = new html_table(array('cols' => 2));