Spaces:
No application file
No application file
| namespace Mautic\AssetBundle\Controller; | |
| use Oneup\UploaderBundle\Controller\DropzoneController; | |
| use Oneup\UploaderBundle\Uploader\Response\EmptyResponse; | |
| use Symfony\Component\HttpFoundation\File\Exception\UploadException; | |
| use Symfony\Component\HttpFoundation\JsonResponse; | |
| use Symfony\Contracts\Translation\TranslatorInterface; | |
| class UploadController extends DropzoneController | |
| { | |
| private TranslatorInterface $translator; | |
| public function upload(): JsonResponse | |
| { | |
| $request = $this->getRequest(); | |
| $response = new EmptyResponse(); | |
| $files = $this->getFiles($request->files); | |
| if (!empty($files)) { | |
| foreach ($files as $file) { | |
| try { | |
| $this->handleUpload($file, $response, $request); | |
| } catch (UploadException $e) { | |
| $this->errorHandler->addException($response, $e); | |
| } catch (\Exception $e) { | |
| error_log($e); | |
| $error = new UploadException($this->translator->trans('mautic.asset.error.file.failed')); | |
| $this->errorHandler->addException($response, $error); | |
| } | |
| } | |
| } else { | |
| $error = new UploadException($this->translator->trans('mautic.asset.error.file.failed')); | |
| $this->errorHandler->addException($response, $error); | |
| } | |
| return $this->createSupportedJsonResponse($response->assemble()); | |
| } | |
| public function setTranslator(TranslatorInterface $translator): void | |
| { | |
| $this->translator = $translator; | |
| } | |
| } | |