diff options
Diffstat (limited to 'lib/classes/JsonApi')
| -rw-r--r-- | lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php b/lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php index b05b370..b09c3eb 100644 --- a/lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php +++ b/lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php @@ -9,6 +9,7 @@ use JsonApi\NonJsonApiController; use Psr\Http\Message\ResponseInterface as Response; use Psr\Http\Message\ServerRequestInterface as Request; use Slim\Psr7\UploadedFile; +use Studip\Services\ImageValidator; use Studip\StockImages\Scaler; use Studip\StockImages\PaletteCreator; @@ -115,8 +116,14 @@ class StockImagesUpload extends NonJsonApiController */ private function validate(UploadedFile $file) { + $validator = $this->container->get(ImageValidator::class); + $mimeType = $file->getClientMediaType(); - if (!in_array($mimeType, ['image/gif', 'image/jpeg', 'image/png', 'image/webp'])) { + $fileName = $file->getClientFilename(); + if ( + !$validator->validateMimeType($mimeType) + || !$validator->validateName($fileName) + ) { return 'Unsupported media type.'; } } |
