X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=mod%2Fattach.php;h=94cb75a386d2a7f6d7ae7681635a495d8f39d7ad;hb=de689583e2741a2caee0e266a19a07d1ad4ed043;hp=ae6540201e70f96227a1bf633aec78deaed4384e;hpb=4bee1859be5fbf46ecc19728a908e31b4e9b09b6;p=friendica.git diff --git a/mod/attach.php b/mod/attach.php index ae6540201e..94cb75a386 100644 --- a/mod/attach.php +++ b/mod/attach.php @@ -16,7 +16,7 @@ function attach_init(&$a) { $r = q("SELECT * FROM `attach` WHERE `id` = %d LIMIT 1", intval($item_id) ); - if(! count($r)) { + if (! dbm::is_result($r)) { notice( t('Item was not found.'). EOL); return; } @@ -29,14 +29,21 @@ function attach_init(&$a) { dbesc($item_id) ); - if(! count($r)) { + if (! dbm::is_result($r)) { notice( t('Permission denied.') . EOL); return; } + // Use quotes around the filename to prevent a "multiple Content-Disposition" + // error in Chrome for filenames with commas in them header('Content-type: ' . $r[0]['filetype']); - header('Content-disposition: attachment; filename=' . $r[0]['filename']); + header('Content-length: ' . $r[0]['filesize']); + if(isset($_GET['attachment']) && $_GET['attachment'] === '0') + header('Content-disposition: filename="' . $r[0]['filename'] . '"'); + else + header('Content-disposition: attachment; filename="' . $r[0]['filename'] . '"'); + echo $r[0]['data']; killme(); // NOTREACHED -} \ No newline at end of file +}