I hope this is correct now
There was no header 'References', I fixed it too.
(http://www.ietf.org/rfc/rfc2822.txt)
The "In-Reply-To:" and "References:" fields are used when creating a
reply to a message. They hold the message identifier of the original
message and the message identifiers of other messages (for example,
in the case of a reply to a message which was itself a reply). The
"In-Reply-To:" field may be used to identify the message (or
messages) to which the new message is a reply, while the
"References:" field may be used to identify a "thread" of
conversation.
When creating a reply to a message, the "In-Reply-To:" and
"References:" fields of the resultant message are constructed as
follows:
The "In-Reply-To:" field will contain the contents of the "Message-
ID:" field of the message to which this one is a reply (the "parent
message").
????????????????????????????????????????????????????????????????????????????
If there is more than one parent message, then the "In-
Reply-To:" field will contain the contents of all of the parents'
"Message-ID:" fields.
?????????????? I don't understand this part ????????????????????????????????
If there is no "Message-ID:" field in any of
the parent messages, then the new message will have no "In-Reply-To:"
field.
sofar a écrit :
Hi,
(cvs-20060205)
when using roundcube to reply to mailinglists etc. it mangles the
msgid string. Roundcube removes the \'<>\' that are required for
some mail clients. Example:
Message-ID: <[EMAIL PROTECTED]>
becomes included in the reply as:
In-Reply-To: [EMAIL PROTECTED]
Taken from a real conversation.
Another thing that bugs me is that I can\'t do \"select all\" \"delete\"
multiple times in the same folder - it seems to bring up the second
page/50 items again over and over again. But this I already reported
to the bugtracker ;^)
Cheers.
Auke
diff -Naur roundcubemail/program/lib/imap.inc
roundcubemail-ok/program/lib/imap.inc
--- roundcubemail/program/lib/imap.inc 2006-02-05 17:14:36.000000000 +0100
+++ roundcubemail-ok/program/lib/imap.inc 2006-02-06 18:38:31.000000000
+0100
@@ -1208,7 +1208,7 @@
/* FETCH date,from,subject headers */
$key="fh".($c++);
- $request=$key." FETCH $message_set (BODY.PEEK[HEADER.FIELDS (DATE FROM
TO SUBJECT REPLY-TO IN-REPLY-TO CC BCC CONTENT-TRANSFER-ENCODING CONTENT-TYPE
MESSAGE-ID)])\r\n";
+ $request=$key." FETCH $message_set (BODY.PEEK[HEADER.FIELDS (DATE FROM
TO SUBJECT REPLY-TO IN-REPLY-TO CC BCC CONTENT-TRANSFER-ENCODING CONTENT-TYPE
MESSAGE-ID REFERENCE)])\r\n";
if (!fputs($fp, $request)) return false;
do{
@@ -1255,6 +1255,7 @@
$result[$id]->date = $headers["date"];
$result[$id]->timestamp =
iil_StrToTime($headers["date"]);
$result[$id]->from = $headers["from"];
+ $result[$id]->reference = $headers["reference"];
$result[$id]->to = str_replace("\n", " ",
$headers["to"]);
$result[$id]->subject = str_replace("\n", "",
$headers["subject"]);
$result[$id]->replyto = str_replace("\n", " ",
$headers["reply-to"]);
@@ -1270,8 +1271,7 @@
$result[$id]->charset = $regs[1];
$messageID = $headers["message-id"];
- if ($messageID) $messageID = substr(substr($messageID,
1), 0, strlen($messageID)-2);
- else $messageID = "mid:".$id;
+ if (!$messageID) "mid:".$id;
$result[$id]->messageID = $messageID;
}
else {
diff -Naur roundcubemail/program/steps/mail/compose.inc
roundcubemail-ok/program/steps/mail/compose.inc
--- roundcubemail/program/steps/mail/compose.inc 2006-02-04
20:08:10.000000000 +0100
+++ roundcubemail-ok/program/steps/mail/compose.inc 2006-02-06
18:47:21.000000000 +0100
@@ -59,6 +59,9 @@
$REPLY_MESSAGE = &$MESSAGE;
$_SESSION['compose']['reply_uid'] = $_GET['_reply_uid'];
$_SESSION['compose']['reply_msgid'] = $REPLY_MESSAGE['headers']->messageID;
+ $_SESSION['compose']['reference'] = $REPLY_MESSAGE['headers']->reference;
+ $_SESSION['compose']['references'] .=
($REPLY_MESSAGE['headers']->reference!='')?' ':'';
+ $_SESSION['compose']['references'] .= $REPLY_MESSAGE['headers']->messageID;
if ($_GET['_all'])
$REPLY_MESSAGE['reply_all'] = 1;
@@ -617,4 +620,4 @@
parse_template('compose');
-?>
\ Pas de fin de ligne à la fin du fichier.
+?>
diff -Naur roundcubemail/program/steps/mail/sendmail.inc
roundcubemail-ok/program/steps/mail/sendmail.inc
--- roundcubemail/program/steps/mail/sendmail.inc 2006-02-05
17:14:56.000000000 +0100
+++ roundcubemail-ok/program/steps/mail/sendmail.inc 2006-02-06
18:47:09.000000000 +0100
@@ -126,6 +126,8 @@
if ($_SESSION['compose']['reply_msgid'])
$headers['In-Reply-To'] = $_SESSION['compose']['reply_msgid'];
+if ($_SESSION['compose']['references'])
+ $headers['References'] = $_SESSION['compose']['references'];
if ($_POST['_priority'])
{