From 5713b4f9e0a97c9aff46744507f1a3915e52a216 Mon Sep 17 00:00:00 2001 From: lbergman Date: Thu, 30 Nov 2000 15:03:42 +0000 Subject: [PATCH] Applied patch from Jeff Evans to fix forward attachment problem git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@858 7612ce4b-ef26-0410-bec9-ea0150e637f0 --- src/compose.php | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/compose.php b/src/compose.php index 694b6ff3..a8d4045e 100644 --- a/src/compose.php +++ b/src/compose.php @@ -150,6 +150,46 @@ } } // function newMail() + function getAttachments($message) { + global $mailbox, $attachments, $attachment_dir, $imapConnection, + $ent_num, $forward_id; + + if (!$message) { + sqimap_mailbox_select($imapConnection, $mailbox); + $message = sqimap_get_message($imapConnection, $forward_id, $mailbox); } + + if (!$message->entities) { + if ($message->header->entity_id != $ent_num) { + $filename = decodeHeader($message->header->filename); + + if ($filename == "") + $filename = "untitled-".$message->header->entity_id; + + $localfilename = md5($filename.", $REMOTE_IP, REMOTE_PORT, $UNIQUE_ID, extra-stuff here"); + + // Write File Info + $fp = fopen ($attachment_dir.$localfilename.".info", "w"); + fputs ($fp, strtolower($message->header->type0)."/".strtolower($message->header->type1)."\n".$filename."\n"); + fclose ($fp); + + // Write Attachment to file + $fp = fopen ($attachment_dir.$localfilename, "w"); + fputs ($fp, decodeBody(mime_fetch_body($imapConnection, $forward_id, $message->header->entity_id), $message->header->encoding)); + fgets($imapConnection, 256); + fgets($imapConnection, 256); + fclose ($fp); + + $attachments[$localfilename] = $filename; + + } + } else { + for ($i = 0; $i < count($message->entities); $i++) { + getAttachments($message->entities[$i]); + } + } + return; + } + function showInputForm () { global $send_to, $send_to_cc, $reply_subj, $forward_subj, $body, $passed_body, $color, $use_signature, $signature, $editor_size, @@ -418,8 +458,12 @@ displayPageHeader($color, $mailbox); $newmail = true; + if ($forward_id && $ent_num) getAttachments(0); + newMail(); showInputForm(); sqimap_logout($imapConnection); } ?> + + -- 2.25.1