Have Horde_Mime_Part::toString() do the necessary header text prepend
authorMichael M Slusarz <slusarz@curecanti.org>
Wed, 1 Jul 2009 22:25:00 +0000 (16:25 -0600)
committerMichael M Slusarz <slusarz@curecanti.org>
Wed, 1 Jul 2009 22:38:27 +0000 (16:38 -0600)
imp/lib/Compose.php
imp/lib/Contents.php
imp/lib/Message.php

index 570ca29..825fe9e 100644 (file)
@@ -230,9 +230,8 @@ class IMP_Compose
 
         /* Need to add Message-ID so we can use it in the index search. */
         $draft_headers->addMessageIdHeader();
-        $draft_headers = $base->addMimeHeaders(array('headers' => $draft_headers));
 
-        return $draft_headers->toString(array('charset' => $charset, 'defserver' => $session ? $_SESSION['imp']['maildomain'] : null)) . $base->toString(array('headers' => false));
+        return $base->toString(array('defserver' => $session ? $_SESSION['imp']['maildomain'] : null, 'headers' => $draft_headers));
     }
 
     /**
@@ -591,8 +590,7 @@ class IMP_Compose
             }
 
             /* Generate the message string. */
-            $fcc = $headers->toString(array('charset' => $charset, 'defserver' => $_SESSION['imp']['maildomain'])) .
-                $mime_message->toString(array('headers' => false));
+            $fcc = $mime_message->toString(array('defserver' => $_SESSION['imp']['maildomain'], 'headers' => $headers, 'stream' => true));
 
             $imp_folder = IMP_Folder::singleton();
 
index 902e407..a623674 100644 (file)
@@ -269,7 +269,7 @@ class IMP_Contents
 
         try {
             $res = $GLOBALS['imp_imap']->ob->fetch($this->_mailbox, array(
-                Horde_Imap_Client::FETCH_HEADERTEXT => array(array('peek' => true, 'stream' => !empty($options['stream']))),
+                Horde_Imap_Client::FETCH_HEADERTEXT => array(array('peek' => true)),
                 Horde_Imap_Client::FETCH_BODYTEXT => array(array('peek' => true, 'stream' => !empty($options['stream'])))
             ), array('ids' => array($this->_index)));
             return empty($options['stream'])
index 38d7957..47f03fa 100644 (file)
@@ -536,7 +536,7 @@ class IMP_Message
                 unset($res['flags'][$pos]);
             }
 
-            $uid = $GLOBALS['imp_imap']->ob->append($mbox, array(array('data' => $res['headertext'][0] . $message->toString(array('headers' => false)), 'flags' => $res['flags'], 'messageid' => $res['envelope']['message-id'])));
+            $uid = $GLOBALS['imp_imap']->ob->append($mbox, array(array('data' => $message->toString(array('headers' => $res['headertext'][0], 'stream' => true)), 'flags' => $res['flags'], 'messageid' => $res['envelope']['message-id'])));
         } catch (Horde_Imap_Client_Exception $e) {
             throw new Horde_Exception(_("An error occured while attempting to strip the attachment."));
         }