| | |
| | | $mimetype = sprintf('%s/%s', $ctype_primary, $ctype_secondary); |
| | | $filename = $part->d_parameters['filename'] ? $part->d_parameters['filename'] : $part->ctype_parameters['name']; |
| | | |
| | | // send correct headers for content type and length |
| | | header("Expires: 0"); |
| | | header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); |
| | | header("Cache-Control: private", false); |
| | | header("Content-Transfer-Encoding: binary"); |
| | | header(sprintf('Content-Disposition: attachment; filename="%s";', |
| | | $filename ? rcube_imap::decode_mime_string($filename) : "roundcube.$ctype_secondary")); |
| | | |
| | | // send download headers |
| | | if ($_GET['_download']) |
| | | { |
| | | // send download headers |
| | | header("Cache-Control: private", false); |
| | | header("Content-Type: application/octet-stream"); |
| | | header(sprintf('Content-Disposition: attachment; filename="%s"', |
| | | $filename ? rcube_imap::decode_mime_string($filename) : "roundcube.$ctype_secondary")); |
| | | } |
| | | else |
| | | { |
| | | header("Content-Type: $mimetype"); |
| | | header(sprintf('Content-Disposition: inline; filename="%s"', rcube_imap::decode_mime_string($filename))); |
| | | } |
| | | |
| | | // We need to set the following headers to make downloads work using IE in HTTPS mode. |
| | | if (isset($_SERVER['HTTPS'])) |