Skip to content

Commit

Permalink
SensioInsight review fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
webda2l committed Oct 2, 2014
1 parent 9771734 commit 0c8a0bd
Show file tree
Hide file tree
Showing 25 changed files with 769 additions and 756 deletions.
2 changes: 1 addition & 1 deletion A2lixTranslationFormBundle.php
Expand Up @@ -17,4 +17,4 @@ public function build(ContainerBuilder $container)

$container->addCompilerPass(new TemplatingPass());
}
}
}
2 changes: 1 addition & 1 deletion CHANGELOG-2.0.md
Expand Up @@ -5,4 +5,4 @@ CHANGELOG for 2.x

- New a2lix_translatedEntity field (see https://github.com/a2lix/TranslationFormBundle/issues/94#issuecomment-30613988)

- 'default_required' (boolean) option is replaced by 'required_locales' (array)
- 'default_required' (boolean) option is replaced by 'required_locales' (array)
72 changes: 36 additions & 36 deletions DependencyInjection/A2lixTranslationFormExtension.php
@@ -1,36 +1,36 @@
<?php

namespace A2lix\TranslationFormBundle\DependencyInjection;

use Symfony\Component\DependencyInjection\ContainerBuilder,
Symfony\Component\Config\Definition\Processor,
Symfony\Component\Config\FileLocator,
Symfony\Component\HttpKernel\DependencyInjection\Extension,
Symfony\Component\DependencyInjection\Loader;

/**
* @author David ALLIX
*/
class A2lixTranslationFormExtension extends Extension
{
/**
*
* @param array $configs
* @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
*/
public function load(array $configs, ContainerBuilder $container)
{
$processor = new Processor();
$config = $processor->processConfiguration(new Configuration(), $configs);

$loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$loader->load('services.xml');

$container->setParameter('a2lix_translation_form.locales', $config['locales']);
$container->setParameter('a2lix_translation_form.default_locale', $container->getParameter('kernel.default_locale', 'en'));
$container->setParameter('a2lix_translation_form.required_locales', $config['required_locales']);
$container->setParameter('a2lix_translation_form.templating', $config['templating']);

$container->setAlias('a2lix_translation_form.manager_registry', $config['manager_registry']);
}
}
<?php

namespace A2lix\TranslationFormBundle\DependencyInjection;

use Symfony\Component\DependencyInjection\ContainerBuilder,
Symfony\Component\Config\Definition\Processor,
Symfony\Component\Config\FileLocator,
Symfony\Component\HttpKernel\DependencyInjection\Extension,
Symfony\Component\DependencyInjection\Loader;

/**
* @author David ALLIX
*/
class A2lixTranslationFormExtension extends Extension
{
/**
*
* @param array $configs
* @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
*/
public function load(array $configs, ContainerBuilder $container)
{
$processor = new Processor();
$config = $processor->processConfiguration(new Configuration(), $configs);

$loader = new Loader\XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
$loader->load('services.xml');

$container->setParameter('a2lix_translation_form.locales', $config['locales']);
$container->setParameter('a2lix_translation_form.default_locale', $container->getParameter('kernel.default_locale', 'en'));
$container->setParameter('a2lix_translation_form.required_locales', $config['required_locales']);
$container->setParameter('a2lix_translation_form.templating', $config['templating']);

$container->setAlias('a2lix_translation_form.manager_registry', $config['manager_registry']);
}
}
90 changes: 45 additions & 45 deletions DependencyInjection/Configuration.php
@@ -1,45 +1,45 @@
<?php

namespace A2lix\TranslationFormBundle\DependencyInjection;

use Symfony\Component\Config\Definition\Builder\TreeBuilder,
Symfony\Component\Config\Definition\ConfigurationInterface;

/**
* @author David ALLIX
*/
class Configuration implements ConfigurationInterface
{
/**
* {@inheritDoc}
*/
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('a2lix_translation_form');

$rootNode
->children()
->arrayNode('locales')
->beforeNormalization()
->ifString()
->then(function($v) { return preg_split('/\s*,\s*/', $v); })
->end()
->requiresAtLeastOneElement()
->prototype('scalar')->end()
->end()
->arrayNode('required_locales')
->beforeNormalization()
->ifString()
->then(function($v) { return preg_split('/\s*,\s*/', $v); })
->end()
->prototype('scalar')->end()
->end()
->scalarNode('manager_registry')->defaultValue('doctrine')->end()
->scalarNode('templating')->defaultValue("A2lixTranslationFormBundle::default.html.twig")->end()
->end()
;

return $treeBuilder;
}
}
<?php

namespace A2lix\TranslationFormBundle\DependencyInjection;

use Symfony\Component\Config\Definition\Builder\TreeBuilder,
Symfony\Component\Config\Definition\ConfigurationInterface;

/**
* @author David ALLIX
*/
class Configuration implements ConfigurationInterface
{
/**
* {@inheritDoc}
*/
public function getConfigTreeBuilder()
{
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('a2lix_translation_form');

$rootNode
->children()
->arrayNode('locales')
->beforeNormalization()
->ifString()
->then(function($v) { return preg_split('/\s*,\s*/', $v); })
->end()
->requiresAtLeastOneElement()
->prototype('scalar')->end()
->end()
->arrayNode('required_locales')
->beforeNormalization()
->ifString()
->then(function($v) { return preg_split('/\s*,\s*/', $v); })
->end()
->prototype('scalar')->end()
->end()
->scalarNode('manager_registry')->defaultValue('doctrine')->end()
->scalarNode('templating')->defaultValue("A2lixTranslationFormBundle::default.html.twig")->end()
->end()
;

return $treeBuilder;
}
}
78 changes: 39 additions & 39 deletions Form/EventListener/TranslationsFormsListener.php
@@ -1,39 +1,39 @@
<?php

namespace A2lix\TranslationFormBundle\Form\EventListener;

use Symfony\Component\Form\FormEvent,
Symfony\Component\Form\FormEvents,
Symfony\Component\EventDispatcher\EventSubscriberInterface;

/**
* @author David ALLIX
*/
class TranslationsFormsListener implements EventSubscriberInterface
{
/**
*
* @param \Symfony\Component\Form\FormEvent $event
*/
public function submit(FormEvent $event)
{
$data = $event->getData();

foreach ($data as $locale => $translation) {
// Remove useless Translation object
if (!$translation) {
$data->removeElement($translation);
} else {
$translation->setLocale($locale);
}
}
}
public static function getSubscribedEvents()
{
return array(
FormEvents::SUBMIT => 'submit',
);
}
}
<?php

namespace A2lix\TranslationFormBundle\Form\EventListener;

use Symfony\Component\Form\FormEvent,
Symfony\Component\Form\FormEvents,
Symfony\Component\EventDispatcher\EventSubscriberInterface;

/**
* @author David ALLIX
*/
class TranslationsFormsListener implements EventSubscriberInterface
{
/**
*
* @param \Symfony\Component\Form\FormEvent $event
*/
public function submit(FormEvent $event)
{
$data = $event->getData();

foreach ($data as $locale => $translation) {
// Remove useless Translation object
if (!$translation) {
$data->removeElement($translation);

} else {
$translation->setLocale($locale);
}
}
}

public static function getSubscribedEvents()
{
return array(
FormEvents::SUBMIT => 'submit',
);
}
}

0 comments on commit 0c8a0bd

Please sign in to comment.