aboutsummaryrefslogtreecommitdiff
path: root/lib/classes/JsonApi
diff options
context:
space:
mode:
Diffstat (limited to 'lib/classes/JsonApi')
-rw-r--r--lib/classes/JsonApi/Routes/StockImages/StockImagesUpload.php9
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.';
}
}