diff options
Diffstat (limited to 'src/views/pages/messages/frame.html.php')
-rw-r--r-- | src/views/pages/messages/frame.html.php | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/views/pages/messages/frame.html.php b/src/views/pages/messages/frame.html.php new file mode 100644 index 0000000..e64bc2f --- /dev/null +++ b/src/views/pages/messages/frame.html.php @@ -0,0 +1,57 @@ +<?php global $VARS; +$t = $VARS['template']; +$msg_id = $VARS['msg_id']; +$parser = $VARS['parser']; +$msgdir = $VARS['msgdir']; + +function messageLink($id) { + if (is_array($id)) { $id = $id[1]; } + global $VARS; $t = $VARS['template']; $msgdir = $VARS['msgdir']; + $exists = is_file("$msgdir/$id"); + $class = + $id = htmlentities($id); + return sprintf('<<a href="%1$s"%2$s>%3$s</a>>', + $t->url("messages/$id/"), + ($exists?'':' class="http404"'), + $id); +} +function parseMessageIDs($string) { + $base = $_SERVER['REQUEST_URL']; + $html = preg_replace_callback( + '/<([^>]*)>/', + 'messageLink', + $string); + return $html; +} + +$t->header('View Message'); +$t->openTag('table'); +$t->row(array('To:' , htmlentities( $parser->getHeader('to' )))); +$t->row(array('From:' , htmlentities( $parser->getHeader('from' )))); +$t->row(array('Subject:' , htmlentities( $parser->getHeader('subject' )))); +$t->row(array('In-Reply-to:', parseMessageIDs($parser->getHeader('in-reply-to')))); +$t->row(array('References:' , parseMessageIDs($parser->getHeader('references' )))); +$t->closeTag('table'); + +$t->openTag('div', array('class'=>'message-body')); +if ($parser->getMessageBodyPart('html')!==false) { + $t->tag('h2', array(), 'HTML'); + $t->tag('iframe', array('src'=>$t->url("messages/$msg_id/body.html")), ''); +} +if ($parser->getMessageBodyPart('text')!==false) { + $t->tag('h2', array(), 'Plain Text'); + $t->tag('iframe', array('src'=>$t->url("messages/$msg_id/body.txt")), ''); +} +$t->closeTag('div'); +$t->tag('h2', array(), 'Attachments'); +$t->openTag('table'); +$attachments = $parser->getAttachments(); +foreach ($attachments as $id => $attachment) { + $t->row(array( + htmlentities($attachment->getContentType()), + $t->link($t->url("$msg_id/attachment/$id"), + htmlentities($attachment->getFilename())), + )); +} +$t->closeTag('table'); +$t->footer(); |