]> git.donarmstrong.com Git - roundcube.git/blobdiff - program/steps/mail/get.inc
Imported Upstream version 0.1
[roundcube.git] / program / steps / mail / get.inc
index 42b52bfeb24af252d0f8a121fdd013cf33a49884..c5f94804476979aa05773545394a7331717f31cc 100644 (file)
@@ -5,7 +5,7 @@
  | program/steps/mail/get.inc                                            |
  |                                                                       |
  | This file is part of the RoundCube Webmail client                     |
- | Copyright (C) 2005, RoundCube Dev. - Switzerland                      |
+ | Copyright (C) 2005-2007, RoundCube Dev. - Switzerland                 |
  | Licensed under the GNU GPL                                            |
  |                                                                       |
  | PURPOSE:                                                              |
@@ -15,7 +15,7 @@
  | Author: Thomas Bruederli <roundcube@gmail.com>                        |
  +-----------------------------------------------------------------------+
 
- $Id: get.inc 511 2007-03-19 22:36:24Z thomasb $
+ $Id: get.inc 1026 2008-02-07 07:50:37Z thomasb $
 
 */
 
@@ -29,7 +29,7 @@ if ($_GET['_preload'])
   $message = rcube_label('loadingdata');
 
   print "<html>\n<head>\n" .
-        '<meta http-equiv="refresh" content="0; url='.htmlspecialchars($url).'">' .
+        '<meta http-equiv="refresh" content="0; url='.Q($url).'">' .
         "\n</head>\n<body>" .
         $message .
         "\n</body>\n</html>";
@@ -55,7 +55,7 @@ if ($_GET['_frame'])
 
 else if ($pid = get_input_value('_part', RCUBE_INPUT_GET))
   {
-  if ($part = $MESSAGE['parts'][$pid]);
+  if ($part = $MESSAGE['parts'][$pid])
     {
     $ctype_primary = strtolower($part->ctype_primary);
     $ctype_secondary = strtolower($part->ctype_secondary);
@@ -88,7 +88,7 @@ else if ($pid = get_input_value('_part', RCUBE_INPUT_GET))
       // we have to analyze the whole structure again to find inline objects
       list($new_parts, $new_attachments) =
         rcmail_parse_message($MESSAGE['structure'],
-                             array('safe' => (bool)$_GET['_safe'],
+                             array('safe' => intval($_GET['_safe']),
                                    'prefer_html' => TRUE,
                                    'get_url' => $GET_URL.'&_part=%s'));
 
@@ -102,16 +102,16 @@ else if ($pid = get_input_value('_part', RCUBE_INPUT_GET))
         $part->body = $IMAP->get_message_part($MESSAGE['UID'], $part->mime_id, $part);
 
       $OUTPUT = new rcube_html_page();
-      $OUTPUT->write(rcmail_print_body($part, (bool)$_GET['_safe']));
+      $OUTPUT->write(rcmail_print_body($part, intval($_GET['_safe'])));
       }
     else
       {
       header(sprintf('Content-Disposition: %s; filename="%s";',
-                     $part->disposition ? $part->disposition : 'attachment',
-                     $part->filename ? $part->filename : "roundcube.$ctype_secondary"));
+                     $_GET['_download'] ? 'attachment' : 'inline',
+                     $part->filename ? abbreviate_string($part->filename, 55) : "roundcube.$ctype_secondary"));
 
       // turn off output buffering and print part content
-      $IMAP->get_message_part($MESSAGE['UID'], $part->mime_id, $part->encoding, true);
+      $IMAP->get_message_part($MESSAGE['UID'], $part->mime_id, $part, true);
       }
 
     exit;
@@ -130,7 +130,7 @@ else
 
   $cont = ''; 
   list($MESSAGE['parts']) = rcmail_parse_message($MESSAGE['structure'],
-                                                 array('safe' => (bool)$_GET['_safe'],
+                                                 array('safe' => intval($_GET['_safe']),
                                                  'get_url' => $GET_URL.'&_part=%s'));
 
   $cont = "<html>\n<head><title></title>\n</head>\n<body>";
@@ -148,4 +148,4 @@ else
 header('HTTP/1.1 404 Not Found');
 exit;
 
-?>
\ No newline at end of file
+?>