- // lets redefine message as this particular entity that we wish to display.
- // it should hold only the header for this entity. We need to fetch the body
- // yet before we can display anything.
- $message = getEntity($message, $passed_ent_id);
-
- $header = $message->header;
- $body = mime_fetch_body($imapConnection, $passed_id, $passed_ent_id);
-
- $type0 = $header->type0;
- $type1 = $header->type1;
- $filename = $header->filename;
-
- if (strlen($filename) < 1) {
- $filename = "untitled$passed_ent_id.$type1";
- }
-
- // Note:
- // The following sections display the attachment in different
- // ways depending on how they choose. The first way will download
- // under any circumstance. This sets the Content-type to be
- // applicatin/octet-stream, which should be interpreted by the
- // browser as "download me".
- // The second method (view) is used for images or other formats
- // that should be able to be handled by the browser. It will
- // most likely display the attachment inline inside the browser.
- // And finally, the third one will be used by default. If it
- // is displayable (text or html), it will load them up in a text
- // viewer (built in to squirrelmail). Otherwise, it sets the
- // content-type as application/octet-stream
-
- if ($absolute_dl == "true") {
- switch($type0) {
- case "text":
- $body = decodeBody($body, $header->encoding);
- #header("Content-type: $type0/$type1; name=\"$filename\"");
- header("Content-type: application/octet-stream; name=\"$filename\"");
- header("Content-Disposition: attachment; filename=\"$filename\"");
- echo trim($body);
- break;
- default:
- $body = decodeBody($body, $header->encoding);
- header("Content-type: application/octet-stream; name=\"$filename\"");
- #header("Content-type: $type0/$type1; name=\"$filename\"");
- header("Content-Disposition: attachment; filename=\"$filename\"");
- echo $body;
- break;
- }
- } else if ($view == "true") {
- $body = decodeBody ($body, $header->encoding);
- header("Content-type: $type0/$type1; name=\"$filename\"");
- header("Content-disposition: attachment; filename=\"$filename\"");
- echo $body;
- } else {
- switch ($type0) {
- case "text":
- $body = decodeBody($body, $header->encoding);
- viewText($color, $body, $passed_id, $passed_ent_id, $mailbox, $type1, $wrap_at);
- break;
- case "message":
- $body = decodeBody($body, $header->encoding);
- viewText($color, $body, $passed_id, $passed_ent_id, $mailbox, $type1, $wrap_at);
- break;
- default:
- $body = decodeBody($body, $header->encoding);
- header("Content-type: applicatin/octet-stream; name=\"$filename\"");
- header("Content-Disposition: attachment; filename=\"$filename\"");
- echo $body;
- break;
- }
- }
-
- sqimap_logout($imapConnection);
-?>
+/*
+ * Note:
+ * The following sections display the attachment in different
+ * ways depending on how they choose. The first way will download
+ * under any circumstance. This sets the Content-type to be
+ * applicatin/octet-stream, which should be interpreted by the
+ * browser as "download me".
+ * The second method (view) is used for images or other formats
+ * that should be able to be handled by the browser. It will
+ * most likely display the attachment inline inside the browser.
+ * And finally, the third one will be used by default. If it
+ * is displayable (text or html), it will load them up in a text
+ * viewer (built in to SquirrelMail). Otherwise, it sets the
+ * content-type as application/octet-stream
+ */
+if (isset($absolute_dl) && $absolute_dl) {
+ SendDownloadHeaders($type0, $type1, $filename, 1);
+} else {
+ SendDownloadHeaders($type0, $type1, $filename, 0);
+}
+/* be aware that any warning caused by download.php will corrupt the
+ * attachment in case of ERROR reporting = E_ALL and the output is the screen */
+mime_print_body_lines ($imapConnection, $passed_id, $ent_id, $encoding);
+$mailbox_cache[$aMailbox['NAME']] = $aMailbox;
+sqsession_register($mailbox_cache,'mailbox_cache');
+?>
\ No newline at end of file