summaryrefslogtreecommitdiff
path: root/src/views/pages/messages/frame.html.php
diff options
context:
space:
mode:
authorLuke Shumaker <LukeShu@sbcglobal.net>2011-09-04 21:13:47 -0400
committerLuke Shumaker <LukeShu@sbcglobal.net>2011-09-04 21:13:47 -0400
commitad4a7ff9159c2c64cea98d7189f46fa7d6174fc2 (patch)
tree508f971f1dbc6c6f01207426c675542b55e0333e /src/views/pages/messages/frame.html.php
parentf3b3ea69fb46e45bf3598aa7a6bcf62aa80e4703 (diff)
Screw it, I'm tired of trying to break this into individual commits
Diffstat (limited to 'src/views/pages/messages/frame.html.php')
-rw-r--r--src/views/pages/messages/frame.html.php57
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('&lt;<a href="%1$s"%2$s>%3$s</a>&gt;',
+ $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();