From 5758b9b32ad4657ccb1d386d21ec498878d2be52 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Tue, 16 Sep 2008 14:55:04 -0400
Subject: [PATCH] - Added Reply-To to forwarded emails (#1485315)

---
 CHANGELOG                      |    1 +
 program/steps/mail/compose.inc |   24 ++++++++++++++++--------
 2 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG
index c3af3f1..5593c45 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -7,6 +7,7 @@
 - Fix inline images handling when replying/forwarding html messages
 - Allow and use spellcheck attribute for input/textarea fields (#1485060)
 - Added icons for forwarded/forwarded+replied messages (#1485257)
+- Added Reply-To to forwarded emails (#1485315)
 
 2008/09/15 (thomasb)
 ----------
diff --git a/program/steps/mail/compose.inc b/program/steps/mail/compose.inc
index 151b461..7995b34 100644
--- a/program/steps/mail/compose.inc
+++ b/program/steps/mail/compose.inc
@@ -543,11 +543,14 @@
 
   if (!$bodyIsHtml)
   {
-    $prefix = sprintf("\n\n\n-------- Original Message --------\nSubject: %s\nDate: %s\nFrom: %s\nTo: %s\n\n",
-      $MESSAGE->subject,
-      $MESSAGE->headers->date,
-      $MESSAGE->get_header('from'),
-      $MESSAGE->get_header('to'));
+    $prefix = "\n\n\n-------- Original Message --------\n";
+    $prefix .= 'Subject: ' . $MESSAGE->subject . "\n";
+    $prefix .= 'Date: ' . $MESSAGE->headers->date . "\n";
+    $prefix .= 'From: ' . $MESSAGE->get_header('from') . "\n";
+    $prefix .= 'To: ' . $MESSAGE->get_header('to') . "\n";
+    if ($MESSAGE->headers->replyto && $MESSAGE->headers->replyto != $MESSAGE->headers->from)
+      $prefix .= 'Reply-To: ' . $MESSAGE->get_header('replyto') . "\n";
+    $prefix .= "\n";
   }
   else
   {
@@ -557,12 +560,17 @@
         "<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">Subject: </th><td>%s</td></tr>" .
         "<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">Date: </th><td>%s</td></tr>" .
         "<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">From: </th><td>%s</td></tr>" .
-        "<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">To: </th><td>%s</td></tr>" .
-        "</tbody></table><br>",
+        "<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">To: </th><td>%s</td></tr>",
       Q($MESSAGE->subject),
       Q($MESSAGE->headers->date),
       htmlspecialchars(Q($MESSAGE->get_header('from'), 'replace'), ENT_COMPAT, $OUTPUT->get_charset(), true),
-      htmlspecialchars(Q($MESSAGE->get_header('to'), 'replace'), ENT_COMPAT, $OUTPUT->get_charset(), true));
+	htmlspecialchars(Q($MESSAGE->get_header('to'), 'replace'), ENT_COMPAT, $OUTPUT->get_charset(), true));
+
+    if ($MESSAGE->headers->replyto && $MESSAGE->headers->replyto != $MESSAGE->headers->from)
+      $prefix .= sprintf("<tr><th align=\"right\" nowrap=\"nowrap\" valign=\"baseline\">Reply-To: </th><td>%s</td></tr>",
+	htmlspecialchars(Q($MESSAGE->get_header('replyto'), 'replace'), ENT_COMPAT, $OUTPUT->get_charset(), true));
+
+    $prefix .= "</tbody></table><br>";
   }
 
   // add attachments

--
Gitblit v1.9.1