[FEATURE] Introduce Extbase file upload and deletion handling
This change introduces file upload handling in Extbase, aiming to simplify and standardize the process of managing file uploads and deletions in TYPO3 extensions with simple attributes/annotations. Recognizing the complexity of file upload scenarios, this feature is designed to cover direct domain model properties only. It provides support for handling file uploads and deletions for properties of types `FileReference`, and `ObjectStorage<FileReference>` in non-nested domain models. The new API uses extbase validators to validate file size, allowed MIME types and image dimensions, ensuring the integrity and security of uploaded files. The feature also supports custom validators, allowing developers to extend validation logic according to specific needs. Resolves: #103511 Related: #103022 Releases: main Change-Id: I311d9e10bc692a849e79f67d4d12246cdbccb37f Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/83749 Tested-by:Oliver Hader <oliver.hader@typo3.org> Reviewed-by:
Nikita Hovratov <nikita.h@live.de> Tested-by:
core-ci <typo3@b13.com> Reviewed-by:
Oliver Hader <oliver.hader@typo3.org> Tested-by:
Garvin Hicking <gh@faktor-e.de> Reviewed-by:
Garvin Hicking <gh@faktor-e.de>
Showing
- Build/Scripts/phpIntegrityChecks/AnnotationChecker.php 1 addition, 0 deletionsBuild/Scripts/phpIntegrityChecks/AnnotationChecker.php
- composer.json 1 addition, 0 deletionscomposer.json
- typo3/sysext/core/Documentation/Changelog/13.3/Feature-103511-IntroduceExtbaseFileUploadHandling.rst 376 additions, 0 deletions...3.3/Feature-103511-IntroduceExtbaseFileUploadHandling.rst
- typo3/sysext/extbase/Classes/Annotation/FileUpload.php 65 additions, 0 deletionstypo3/sysext/extbase/Classes/Annotation/FileUpload.php
- typo3/sysext/extbase/Classes/Event/Service/ModifyUploadedFileTargetFilenameEvent.php 47 additions, 0 deletions...s/Event/Service/ModifyUploadedFileTargetFilenameEvent.php
- typo3/sysext/extbase/Classes/Mvc/Controller/ActionController.php 22 additions, 5 deletions...ysext/extbase/Classes/Mvc/Controller/ActionController.php
- typo3/sysext/extbase/Classes/Mvc/Controller/Argument.php 65 additions, 1 deletiontypo3/sysext/extbase/Classes/Mvc/Controller/Argument.php
- typo3/sysext/extbase/Classes/Mvc/Controller/FileHandlingServiceConfiguration.php 251 additions, 0 deletions...asses/Mvc/Controller/FileHandlingServiceConfiguration.php
- typo3/sysext/extbase/Classes/Mvc/Controller/FileUploadConfiguration.php 258 additions, 0 deletions...xtbase/Classes/Mvc/Controller/FileUploadConfiguration.php
- typo3/sysext/extbase/Classes/Mvc/Controller/FileUploadDeletionConfiguration.php 41 additions, 0 deletions...lasses/Mvc/Controller/FileUploadDeletionConfiguration.php
- typo3/sysext/extbase/Classes/Reflection/ClassSchema.php 34 additions, 0 deletionstypo3/sysext/extbase/Classes/Reflection/ClassSchema.php
- typo3/sysext/extbase/Classes/Reflection/ClassSchema/Property.php 6 additions, 0 deletions...ysext/extbase/Classes/Reflection/ClassSchema/Property.php
- typo3/sysext/extbase/Classes/Service/FileHandlingService.php 448 additions, 0 deletionstypo3/sysext/extbase/Classes/Service/FileHandlingService.php
- typo3/sysext/extbase/Resources/Private/Language/locallang.xlf 10 additions, 1 deletion...3/sysext/extbase/Resources/Private/Language/locallang.xlf
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/Classes/Domain/Model/Dto/FileUploadObjectStorageUploadedFile.php 59 additions, 0 deletions.../Domain/Model/Dto/FileUploadObjectStorageUploadedFile.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/Classes/Domain/Model/FileReferencePropertyMultiple.php 60 additions, 0 deletions...ad/Classes/Domain/Model/FileReferencePropertyMultiple.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/Classes/Domain/Model/FileReferencePropertySingle.php 46 additions, 0 deletions...load/Classes/Domain/Model/FileReferencePropertySingle.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/Classes/Domain/Model/FileUploadMultipleProperties.php 80 additions, 0 deletions...oad/Classes/Domain/Model/FileUploadMultipleProperties.php
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/Configuration/Services.yaml 9 additions, 0 deletions...xtures/Extensions/file_upload/Configuration/Services.yaml
- typo3/sysext/extbase/Tests/Functional/Fixtures/Extensions/file_upload/composer.json 19 additions, 0 deletions.../Functional/Fixtures/Extensions/file_upload/composer.json
Loading
Please register or sign in to comment