diff --git a/src/DependencyInjection/A2lixTranslationFormExtension.php b/src/DependencyInjection/A2lixTranslationFormExtension.php index a63fb76..ea8e9a1 100644 --- a/src/DependencyInjection/A2lixTranslationFormExtension.php +++ b/src/DependencyInjection/A2lixTranslationFormExtension.php @@ -16,7 +16,7 @@ use Symfony\Component\Config\Definition\Processor; use Symfony\Component\Config\FileLocator; use Symfony\Component\DependencyInjection\ContainerBuilder; -use Symfony\Component\DependencyInjection\Loader\XmlFileLoader; +use Symfony\Component\DependencyInjection\Loader\YamlFileLoader; use Symfony\Component\HttpKernel\DependencyInjection\Extension; class A2lixTranslationFormExtension extends Extension @@ -26,8 +26,8 @@ public function load(array $configs, ContainerBuilder $container): void $processor = new Processor(); $config = $processor->processConfiguration(new Configuration(), $configs); - $loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); - $loader->load('a2lix_form.xml'); + $loader = new YamlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config')); + $loader->load('a2lix_form.yaml'); $container->setParameter('a2lix_translation_form.locale_provider', $config['locale_provider']); $container->setParameter('a2lix_translation_form.locales', $config['locales']); diff --git a/src/Resources/config/a2lix_for.yaml b/src/Resources/config/a2lix_for.yaml new file mode 100644 index 0000000..ccb12a0 --- /dev/null +++ b/src/Resources/config/a2lix_for.yaml @@ -0,0 +1,50 @@ +services: + _defaults: + public: false + + a2lix_translation_form.locale.simple_provider: + class: A2lix\TranslationFormBundle\Locale\SimpleProvider + + a2lix_translation_form.form.doctrine_translation_fields_config_provider: + class: A2lix\TranslationFormBundle\Form\Doctrine\DoctrineTranslationFieldsConfigProvider + arguments: + - '@doctrine.orm.entity_manager' + - ['id', 'locale', 'translatable'] + + a2lix_translation_form.form.event_listener.translations_listener: + class: A2lix\TranslationFormBundle\Form\EventListener\TranslationsListener + arguments: + - '@a2lix_translation_form.form.doctrine_translation_fields_config_provider' + + a2lix_translation_form.form.event_listener.translations_form_listener: + class: A2lix\TranslationFormBundle\Form\EventListener\TranslationsFormsListener + + a2lix_translation_form.form.type.translations_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsType + arguments: + - '@a2lix_translation_form.form.event_listener.translations_listener' + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translations_forms_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsFormsType + arguments: + - '@a2lix_translation_form.form.event_listener.translations_form_listener' + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translations_locales_selector_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsLocalesSelectorType + arguments: + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translated_entity_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslatedEntityType + arguments: + - '@request_stack' + tags: + - { name: form.type } diff --git a/src/Resources/config/a2lix_form.xml b/src/Resources/config/a2lix_form.xml deleted file mode 100644 index 0903101..0000000 --- a/src/Resources/config/a2lix_form.xml +++ /dev/null @@ -1,56 +0,0 @@ - - - - - - - - - - - - - - - id - locale - translatable - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/src/Resources/config/a2lix_form.yaml b/src/Resources/config/a2lix_form.yaml new file mode 100644 index 0000000..ccb12a0 --- /dev/null +++ b/src/Resources/config/a2lix_form.yaml @@ -0,0 +1,50 @@ +services: + _defaults: + public: false + + a2lix_translation_form.locale.simple_provider: + class: A2lix\TranslationFormBundle\Locale\SimpleProvider + + a2lix_translation_form.form.doctrine_translation_fields_config_provider: + class: A2lix\TranslationFormBundle\Form\Doctrine\DoctrineTranslationFieldsConfigProvider + arguments: + - '@doctrine.orm.entity_manager' + - ['id', 'locale', 'translatable'] + + a2lix_translation_form.form.event_listener.translations_listener: + class: A2lix\TranslationFormBundle\Form\EventListener\TranslationsListener + arguments: + - '@a2lix_translation_form.form.doctrine_translation_fields_config_provider' + + a2lix_translation_form.form.event_listener.translations_form_listener: + class: A2lix\TranslationFormBundle\Form\EventListener\TranslationsFormsListener + + a2lix_translation_form.form.type.translations_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsType + arguments: + - '@a2lix_translation_form.form.event_listener.translations_listener' + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translations_forms_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsFormsType + arguments: + - '@a2lix_translation_form.form.event_listener.translations_form_listener' + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translations_locales_selector_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslationsLocalesSelectorType + arguments: + - '@a2lix_translation_form.locale_provider.default' + tags: + - { name: form.type } + + a2lix_translation_form.form.type.translated_entity_type: + class: A2lix\TranslationFormBundle\Form\Type\TranslatedEntityType + arguments: + - '@request_stack' + tags: + - { name: form.type }