diff --git a/DependencyInjection/Configuration.php b/DependencyInjection/Configuration.php
index 2a8db4b..354c6df 100644
--- a/DependencyInjection/Configuration.php
+++ b/DependencyInjection/Configuration.php
@@ -20,11 +20,10 @@ class Configuration implements ConfigurationInterface
/**
* {@inheritdoc}
*/
- public function getConfigTreeBuilder()
+ public function getConfigTreeBuilder(): TreeBuilder
{
$tb = new TreeBuilder('sherlockode_advanced_form');
- // BC layer for symfony/config < 4.2
- $root = \method_exists($tb, 'getRootNode') ? $tb->getRootNode() : $tb->root('sherlockode_advanced_form');
+ $root = $tb->getRootNode();
$this->addStorageSection($root);
$this->addUploaderSection($root);
diff --git a/DependencyInjection/SherlockodeAdvancedFormExtension.php b/DependencyInjection/SherlockodeAdvancedFormExtension.php
index 0ce0411..e7c591c 100644
--- a/DependencyInjection/SherlockodeAdvancedFormExtension.php
+++ b/DependencyInjection/SherlockodeAdvancedFormExtension.php
@@ -7,7 +7,7 @@
use Symfony\Component\Config\FileLocator;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Definition;
-use Symfony\Component\DependencyInjection\Loader\YamlFileLoader;
+use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
use Symfony\Component\DependencyInjection\Reference;
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
@@ -76,12 +76,12 @@ private function getStorageDefinition($name, $config)
*/
private function loadServices(ContainerBuilder $container)
{
- $loader = new YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
+ $loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$toBeLoaded = [
- 'command.yml',
- 'controller.yml',
- 'form.yml',
- 'manager.yml',
+ 'command.xml',
+ 'controller.xml',
+ 'form.xml',
+ 'manager.xml',
];
foreach ($toBeLoaded as $file) {
$loader->load($file);
diff --git a/Form/DataTransformer/TemporaryUploadFileTransformer.php b/Form/DataTransformer/TemporaryUploadFileTransformer.php
index 942a586..2dab7ec 100644
--- a/Form/DataTransformer/TemporaryUploadFileTransformer.php
+++ b/Form/DataTransformer/TemporaryUploadFileTransformer.php
@@ -65,7 +65,6 @@ public function reverseTransform($data)
$data->getFilename(),
null,
null,
- null,
true
);
}
diff --git a/Form/Type/DependentEntityType.php b/Form/Type/DependentEntityType.php
index 0724702..bd0e5e6 100644
--- a/Form/Type/DependentEntityType.php
+++ b/Form/Type/DependentEntityType.php
@@ -61,7 +61,7 @@ public function __construct(
$this->router = $router;
}
- public function getParent()
+ public function getParent(): ?string
{
return EntityType::class;
}
diff --git a/Form/Type/FileCollectionType.php b/Form/Type/FileCollectionType.php
index 80096fa..ef4e0f6 100644
--- a/Form/Type/FileCollectionType.php
+++ b/Form/Type/FileCollectionType.php
@@ -59,7 +59,7 @@ public function configureOptions(OptionsResolver $resolver)
$resolver->setRequired('mapping');
}
- public function getParent()
+ public function getParent(): ?string
{
return CollectionType::class;
}
diff --git a/Form/Type/FileType.php b/Form/Type/FileType.php
index 5973b5e..1861960 100644
--- a/Form/Type/FileType.php
+++ b/Form/Type/FileType.php
@@ -168,7 +168,7 @@ public function buildForm(FormBuilderInterface $builder, array $options)
/**
* {@inheritdoc}
*/
- public function getBlockPrefix()
+ public function getBlockPrefix(): string
{
return 'afb_file';
}
diff --git a/Form/Type/RemoveFileType.php b/Form/Type/RemoveFileType.php
index 01aed1c..00e2193 100644
--- a/Form/Type/RemoveFileType.php
+++ b/Form/Type/RemoveFileType.php
@@ -38,7 +38,7 @@ public function buildForm(FormBuilderInterface $builder, array $options)
/**
* @return string
*/
- public function getBlockPrefix()
+ public function getBlockPrefix(): string
{
return 'afb_remove_file';
}
diff --git a/Form/Type/TemporaryUploadedFileType.php b/Form/Type/TemporaryUploadedFileType.php
index e2e6524..6c2545d 100644
--- a/Form/Type/TemporaryUploadedFileType.php
+++ b/Form/Type/TemporaryUploadedFileType.php
@@ -76,7 +76,7 @@ public function configureOptions(OptionsResolver $resolver)
/**
* @return string
*/
- public function getBlockPrefix()
+ public function getBlockPrefix(): string
{
return 'afb_temporary_uploaded_file';
}
diff --git a/Form/Type/UploadFileType.php b/Form/Type/UploadFileType.php
index 05f105f..7a7e853 100644
--- a/Form/Type/UploadFileType.php
+++ b/Form/Type/UploadFileType.php
@@ -115,7 +115,7 @@ public function configureOptions(OptionsResolver $optionsResolver)
/**
* @return string
*/
- public function getBlockPrefix()
+ public function getBlockPrefix(): string
{
return 'afb_upload_file';
}
diff --git a/README.md b/README.md
index b5549b1..96104f3 100644
--- a/README.md
+++ b/README.md
@@ -37,7 +37,7 @@ Import the routing in `config/routes.yml`
```yaml
sherlockode_advanced_form:
- resource: "@SherlockodeAdvancedFormBundle/Resources/config/routing/all.yml"
+ resource: "@SherlockodeAdvancedFormBundle/Resources/config/routing/all.xml"
```
### Step 4: Publish assets
diff --git a/Resources/config/command.xml b/Resources/config/command.xml
new file mode 100644
index 0000000..d2e6b77
--- /dev/null
+++ b/Resources/config/command.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_class%
+
+
+
+
diff --git a/Resources/config/command.yml b/Resources/config/command.yml
deleted file mode 100644
index 7af3876..0000000
--- a/Resources/config/command.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-services:
- sherlockode_afb.command.remove_tmp_files:
- class: Sherlockode\AdvancedFormBundle\Command\RemoveTemporaryFileCommand
- arguments:
- - '@doctrine.orm.entity_manager'
- - '@sherlockode_afb.storage.tmp_storage'
- - '%sherlockode_afb.tmp_uploaded_file_class%'
- tags: ['console.command']
diff --git a/Resources/config/controller.xml b/Resources/config/controller.xml
new file mode 100644
index 0000000..2cdef0b
--- /dev/null
+++ b/Resources/config/controller.xml
@@ -0,0 +1,33 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_class%
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Resources/config/controller.yml b/Resources/config/controller.yml
deleted file mode 100644
index 51598cd..0000000
--- a/Resources/config/controller.yml
+++ /dev/null
@@ -1,24 +0,0 @@
-services:
- sherlockode_afb.file_upload.controller:
- class: Sherlockode\AdvancedFormBundle\Controller\FileUploadController
- public: true
- arguments:
- - '@sherlockode_afb.upload_manager'
- - '@sherlockode_afb.mapping_manager'
- - '@doctrine.orm.entity_manager'
- - '@event_dispatcher'
- sherlockode_afb.file_upload.temporary_upload_controller:
- class: Sherlockode\AdvancedFormBundle\Controller\TemporaryFileUploadController
- public: true
- arguments:
- - '@sherlockode_afb.upload_manager'
- - '%sherlockode_afb.tmp_uploaded_file_class%'
- - '@sherlockode_afb.storage.tmp_storage'
- - '@event_dispatcher'
-
- sherlockode_afb.dependent_entity.controller:
- class: Sherlockode\AdvancedFormBundle\Controller\DependentEntityController
- public: true
- arguments:
- - '@event_dispatcher'
- - '@sherlockode_afb.dependent_entity.mapper_pool'
diff --git a/Resources/config/form.xml b/Resources/config/form.xml
new file mode 100644
index 0000000..981ea07
--- /dev/null
+++ b/Resources/config/form.xml
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+
+
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_dir%
+
+
+
+
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_class%
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Resources/config/form.yml b/Resources/config/form.yml
deleted file mode 100644
index 15af2b9..0000000
--- a/Resources/config/form.yml
+++ /dev/null
@@ -1,38 +0,0 @@
-services:
- sherlockode_afb.file.form_entity_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\EntityMappingType
- arguments:
- - '@doctrine.orm.entity_manager'
- - '@sherlockode_afb.mapping_manager'
- tags: ['form.type']
- sherlockode_afb.file.form_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\FileType
- arguments:
- - '@router'
- - '@sherlockode_afb.upload_manager'
- - '@sherlockode_afb.mapping_manager'
- - '%sherlockode_afb.tmp_uploaded_file_dir%'
- tags: ['form.type']
- sherlockode_afb.file.collection_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\FileCollectionType
- tags: ['form.type']
- sherlockode_afb.file.tmp_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\TemporaryUploadedFileType
- arguments:
- - '@doctrine.orm.entity_manager'
- - '%sherlockode_afb.tmp_uploaded_file_class%'
- tags: ['form.type']
- sherlockode_afb.file.upload_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\UploadFileType
- arguments:
- - '@sherlockode_afb.mapping_manager'
- - '@translator'
- tags: ['form.type']
- sherlockode_afb.form.dependent_entity_type:
- class: Sherlockode\AdvancedFormBundle\Form\Type\DependentEntityType
- arguments:
- - '@doctrine.orm.entity_manager'
- - '@translator'
- - '@sherlockode_afb.dependent_entity.mapper_pool'
- - '@router'
- tags: ['form.type']
diff --git a/Resources/config/manager.xml b/Resources/config/manager.xml
new file mode 100644
index 0000000..5ab69a1
--- /dev/null
+++ b/Resources/config/manager.xml
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_class%
+
+
+
+ %sherlockode_afb.uploader_mappings%
+
+
+
+ %sherlockode_afb.tmp_uploaded_file_dir%
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Resources/config/manager.yml b/Resources/config/manager.yml
deleted file mode 100644
index ee74091..0000000
--- a/Resources/config/manager.yml
+++ /dev/null
@@ -1,45 +0,0 @@
-services:
- sherlockode_afb.upload_handler.vich:
- class: Sherlockode\AdvancedFormBundle\UploadHandler\VichUploadHandler
- arguments:
- - '@vich_uploader.upload_handler'
- - '@annotation_reader'
- tags:
- - { name: 'sherlockode_afb.upload_handler', alias: vich }
-
- sherlockode_afb.upload_handler.property:
- class: Sherlockode\AdvancedFormBundle\UploadHandler\PropertyUploadHandler
- arguments:
- - '@sherlockode_afb.mapping_manager'
- - ~
- tags:
- - { name: 'sherlockode_afb.upload_handler', alias: property }
-
- sherlockode_afb.upload_manager:
- class: Sherlockode\AdvancedFormBundle\Manager\UploadManager
- arguments:
- - '@doctrine.orm.entity_manager'
- - '@sherlockode_afb.storage.tmp_storage'
- - '%sherlockode_afb.tmp_uploaded_file_class%'
-
- sherlockode_afb.mapping_manager:
- class: Sherlockode\AdvancedFormBundle\Manager\MappingManager
- calls:
- - [setMappingData, ['%sherlockode_afb.uploader_mappings%']]
-
- sherlockode_afb.storage.tmp_storage:
- class: Sherlockode\AdvancedFormBundle\Storage\FilesystemStorage
- arguments:
- - '%sherlockode_afb.tmp_uploaded_file_dir%'
-
- sherlockode_afb.twig_extension:
- class: Sherlockode\AdvancedFormBundle\Twig\Extension\UploaderExtension
- arguments:
- - '@router'
- - '@sherlockode_afb.mapping_manager'
- - '@sherlockode_afb.upload_manager'
- tags:
- - { name: twig.extension }
-
- sherlockode_afb.dependent_entity.mapper_pool:
- class: Sherlockode\AdvancedFormBundle\DependentEntity\DependentMapperPool
diff --git a/Resources/config/routing/all.xml b/Resources/config/routing/all.xml
new file mode 100644
index 0000000..69e1974
--- /dev/null
+++ b/Resources/config/routing/all.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
diff --git a/Resources/config/routing/all.yml b/Resources/config/routing/all.yml
deleted file mode 100644
index 5deb390..0000000
--- a/Resources/config/routing/all.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-sherlockode_afb.dependent_entity:
- resource: './dependent_entity.yml'
-sherlockode_afb.file_upload:
- resource: './upload.yml'
diff --git a/Resources/config/routing/dependent_entity.xml b/Resources/config/routing/dependent_entity.xml
new file mode 100644
index 0000000..a4b2036
--- /dev/null
+++ b/Resources/config/routing/dependent_entity.xml
@@ -0,0 +1,9 @@
+
+
+
+ sherlockode_afb.dependent_entity.controller:getDependentResultsAction
+
+
diff --git a/Resources/config/routing/dependent_entity.yml b/Resources/config/routing/dependent_entity.yml
deleted file mode 100644
index 2819cd5..0000000
--- a/Resources/config/routing/dependent_entity.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-sherlockode_afb_dependent_results:
- path: /sherlockodeadvancedform/dependent-result
- defaults: { _controller: sherlockode_afb.dependent_entity.controller:getDependentResultsAction }
diff --git a/Resources/config/routing/upload.xml b/Resources/config/routing/upload.xml
new file mode 100644
index 0000000..cc99e23
--- /dev/null
+++ b/Resources/config/routing/upload.xml
@@ -0,0 +1,21 @@
+
+
+
+ sherlockode_afb.file_upload.controller:uploadFileAction
+
+
+ sherlockode_afb.file_upload.controller:removeFileAction
+
+
+ sherlockode_afb.file_upload.temporary_upload_controller:uploadTmpAction
+
+
+ sherlockode_afb.file_upload.temporary_upload_controller:removeTmpFileAction
+
+
+ sherlockode_afb.file_upload.temporary_upload_controller:viewUploadedFileAction
+
+
diff --git a/Resources/config/routing/upload.yml b/Resources/config/routing/upload.yml
deleted file mode 100644
index 5250e14..0000000
--- a/Resources/config/routing/upload.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-sherlockode_afb_upload:
- path: /sherlockodeadvancedform/upload
- defaults: { _controller: sherlockode_afb.file_upload.controller:uploadFileAction }
-
-sherlockode_afb_remove:
- path: /sherlockodeadvancedform/remove
- defaults: { _controller: sherlockode_afb.file_upload.controller:removeFileAction }
-
-sherlockode_afb_upload_tmp:
- path: /sherlockodeadvancedform/upload_tmp
- defaults: { _controller: sherlockode_afb.file_upload.temporary_upload_controller:uploadTmpAction }
-
-sherlockode_afb_remove_tmp:
- path: /sherlockodeadvancedform/remove_tmp
- defaults: { _controller: sherlockode_afb.file_upload.temporary_upload_controller:removeTmpFileAction }
-
-sherlockode_afb_preview:
- path: /sherlockodeadvancedform/uploaded/{token}
- defaults: { _controller: sherlockode_afb.file_upload.temporary_upload_controller:viewUploadedFileAction }
diff --git a/composer.json b/composer.json
index f68c6d5..01e43b6 100644
--- a/composer.json
+++ b/composer.json
@@ -10,8 +10,8 @@
}
],
"require": {
- "php": "^7.1",
- "symfony/framework-bundle": "^3.4|^4.0|^5.0",
+ "php": "^7.4|^8.0",
+ "symfony/framework-bundle": "^4.4|^5.0",
"twig/twig": "^2.0|^3.0"
},
"suggest": {