From fb71414dc30207bec79682c8ee525d42d0a6687b Mon Sep 17 00:00:00 2001 From: Eldad Fux Date: Fri, 3 Jul 2020 12:11:19 +0300 Subject: [PATCH] Fixed preview output default value --- app/controllers/api/storage.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/api/storage.php b/app/controllers/api/storage.php index 384ac3a85d..2081ddfa9e 100644 --- a/app/controllers/api/storage.php +++ b/app/controllers/api/storage.php @@ -241,7 +241,7 @@ App::get('/v1/storage/files/:fileId/preview') ->param('height', 0, function () { return new Range(0, 4000); }, 'Resize preview image height, Pass an integer between 0 to 4000.', true) ->param('quality', 100, function () { return new Range(0, 100); }, 'Preview image quality. Pass an integer between 0 to 100. Defaults to 100.', true) ->param('background', '', function () { return new HexColor(); }, 'Preview image background color. Only works with transparent images (png). Use a valid HEX color, no # is needed for prefix.', true) - ->param('output', null, function () { return new WhiteList(\array_merge(\array_keys(Config::getParam('storage-outputs')), [null])); }, 'Output format type (jpeg, jpg, png, gif and webp).', true) + ->param('output', '', function () { return new WhiteList(\array_keys(Config::getParam('storage-outputs'))); }, 'Output format type (jpeg, jpg, png, gif and webp).', true) ->action(function ($fileId, $width, $height, $quality, $background, $output, $request, $response, $project, $projectDB) { /** @var Utopia\Request $request */ /** @var Utopia\Response $response */ @@ -258,7 +258,7 @@ App::get('/v1/storage/files/:fileId/preview') throw new Exception('No such storage device', 400); } - if ((\strpos($request->getServer('HTTP_ACCEPT'), 'image/webp') === false) && ('webp' == $output)) { // Fallback webp to jpeg when no browser support + if ((\strpos($request->getHeader('accept'), 'image/webp') === false) && ('webp' == $output)) { // Fallback webp to jpeg when no browser support $output = 'jpg'; } @@ -304,7 +304,7 @@ App::get('/v1/storage/files/:fileId/preview') $output = (empty($output)) ? $type : $output; return $response - ->setContentType((\in_array($output, $outputs)) ? $outputs[$output] : $outputs['jpg']) + ->setContentType((\array_key_exists($output, $outputs)) ? $outputs[$output] : $outputs['jpg']) ->addHeader('Expires', $date) ->addHeader('X-Appwrite-Cache', 'hit') ->send($data)