Set title of print page to subject of e-mail message
authorMichael M Slusarz <slusarz@curecanti.org>
Fri, 29 Oct 2010 22:38:42 +0000 (16:38 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Tue, 2 Nov 2010 04:56:57 +0000 (22:56 -0600)
imp/templates/print/print.html
imp/view.php

index 29c8e59..341a6dd 100644 (file)
@@ -1,6 +1,8 @@
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN" "DTD/xhtml1-frameset.dtd">
 <html>
- <head></head>
+ <head>
+  <title><tag:title /></title>
+ </head>
  <frameset id="frameset" framespacing="0" frameborder="0" rows="20%,80%">
   <frame id="headers" name="headers" src="<tag:headers />" scrolling="auto" noresize="noresize" />
   <frame name="content" src="<tag:content />" scrolling="auto" noresize="noresize" />
index 4a4f42c..0aa76c4 100644 (file)
@@ -302,6 +302,16 @@ case 'print_attach':
                     $bodyelt = $doc->dom->getElementsByTagName('body')->item(0);
                     $bodyelt->insertBefore($doc->dom->importNode($div, true), $bodyelt->firstChild);
 
+                    /* Make the title the e-mail subject. */
+                    $headers = $contents->getHeaderOb();
+                    $imp_ui_mbox = new IMP_Ui_Mailbox();
+
+                    $headelt = $doc->dom->getElementsByTagName('head')->item(0);
+                    foreach ($headelt->getElementsByTagName('title') as $node) {
+                        $headelt->removeChild($node);
+                    }
+                    $headelt->appendChild($doc->dom->createElement('title', htmlspecialchars($imp_ui_mbox->getSubject($headers->getValue('subject')))));
+
                     echo $doc->returnHtml();
                 } else {
                     echo $render[$key]['data'];
@@ -312,8 +322,12 @@ case 'print_attach':
         break;
 
     default:
+        $headers = $contents->getHeaderOb();
+        $imp_ui_mbox = new IMP_Ui_Mailbox();
         $self_url = Horde::selfUrl(true, true);
+
         $t = $injector->createInstance('Horde_Template');
+        $t->set('title', htmlspecialchars($imp_ui_mbox->getSubject($headers->getValue('subject'))));
         $t->set('headers', $self_url->copy()->add('pmode', 'headers'));
         $t->set('content', $self_url->copy()->add('pmode', 'content'));
         echo $t->fetch(IMP_TEMPLATES . '/print/print.html');