[Form] Renamed choice transformers for better clarity
This commit is contained in:
parent
fc59936740
commit
be9ef42af9
@ -17,8 +17,8 @@ use Symfony\Bridge\Doctrine\Form\ChoiceList\EntityChoiceList;
|
|||||||
use Symfony\Bridge\Doctrine\Form\EventListener\MergeCollectionListener;
|
use Symfony\Bridge\Doctrine\Form\EventListener\MergeCollectionListener;
|
||||||
use Symfony\Bridge\Doctrine\Form\DataTransformer\EntitiesToArrayTransformer;
|
use Symfony\Bridge\Doctrine\Form\DataTransformer\EntitiesToArrayTransformer;
|
||||||
use Symfony\Bridge\Doctrine\Form\DataTransformer\EntityToIdTransformer;
|
use Symfony\Bridge\Doctrine\Form\DataTransformer\EntityToIdTransformer;
|
||||||
use Symfony\Component\Form\DataTransformer\ArrayToChoicesTransformer;
|
use Symfony\Component\Form\DataTransformer\ArrayToBooleanChoicesTransformer;
|
||||||
use Symfony\Component\Form\DataTransformer\ScalarToChoicesTransformer;
|
use Symfony\Component\Form\DataTransformer\ScalarToBooleanChoicesTransformer;
|
||||||
use Symfony\Component\Form\DataTransformer\DataTransformerChain;
|
use Symfony\Component\Form\DataTransformer\DataTransformerChain;
|
||||||
use Symfony\Component\Form\Type\AbstractType;
|
use Symfony\Component\Form\Type\AbstractType;
|
||||||
use Doctrine\ORM\EntityManager;
|
use Doctrine\ORM\EntityManager;
|
||||||
@ -42,13 +42,13 @@ class EntityType extends AbstractType
|
|||||||
$transformers[] = new EntitiesToArrayTransformer($options['choice_list']);
|
$transformers[] = new EntitiesToArrayTransformer($options['choice_list']);
|
||||||
|
|
||||||
if ($options['expanded']) {
|
if ($options['expanded']) {
|
||||||
$transformers[] = new ArrayToChoicesTransformer($options['choice_list']);
|
$transformers[] = new ArrayToBooleanChoicesTransformer($options['choice_list']);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$transformers[] = new EntityToIdTransformer($options['choice_list']);
|
$transformers[] = new EntityToIdTransformer($options['choice_list']);
|
||||||
|
|
||||||
if ($options['expanded']) {
|
if ($options['expanded']) {
|
||||||
$transformers[] = new ScalarToChoicesTransformer($options['choice_list']);
|
$transformers[] = new ScalarToBooleanChoicesTransformer($options['choice_list']);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -14,7 +14,7 @@ namespace Symfony\Component\Form\DataTransformer;
|
|||||||
use Symfony\Component\Form\ChoiceList\ChoiceListInterface;
|
use Symfony\Component\Form\ChoiceList\ChoiceListInterface;
|
||||||
use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
||||||
|
|
||||||
class ArrayToChoicesTransformer implements DataTransformerInterface
|
class ArrayToBooleanChoicesTransformer implements DataTransformerInterface
|
||||||
{
|
{
|
||||||
private $choiceList;
|
private $choiceList;
|
||||||
|
|
@ -14,7 +14,7 @@ namespace Symfony\Component\Form\DataTransformer;
|
|||||||
use Symfony\Component\Form\ChoiceList\ChoiceListInterface;
|
use Symfony\Component\Form\ChoiceList\ChoiceListInterface;
|
||||||
use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
||||||
|
|
||||||
class ScalarToChoicesTransformer implements DataTransformerInterface
|
class ScalarToBooleanChoicesTransformer implements DataTransformerInterface
|
||||||
{
|
{
|
||||||
private $choiceList;
|
private $choiceList;
|
||||||
|
|
@ -18,8 +18,8 @@ use Symfony\Component\Form\Exception\UnexpectedTypeException;
|
|||||||
use Symfony\Component\Form\ChoiceList\ArrayChoiceList;
|
use Symfony\Component\Form\ChoiceList\ArrayChoiceList;
|
||||||
use Symfony\Component\Form\EventListener\FixRadioInputListener;
|
use Symfony\Component\Form\EventListener\FixRadioInputListener;
|
||||||
use Symfony\Component\Form\Renderer\ThemeRendererInterface;
|
use Symfony\Component\Form\Renderer\ThemeRendererInterface;
|
||||||
use Symfony\Component\Form\DataTransformer\ScalarToChoicesTransformer;
|
use Symfony\Component\Form\DataTransformer\ScalarToBooleanChoicesTransformer;
|
||||||
use Symfony\Component\Form\DataTransformer\ArrayToChoicesTransformer;
|
use Symfony\Component\Form\DataTransformer\ArrayToBooleanChoicesTransformer;
|
||||||
|
|
||||||
class ChoiceType extends AbstractType
|
class ChoiceType extends AbstractType
|
||||||
{
|
{
|
||||||
@ -56,11 +56,11 @@ class ChoiceType extends AbstractType
|
|||||||
->setAttribute('expanded', $options['expanded']);
|
->setAttribute('expanded', $options['expanded']);
|
||||||
|
|
||||||
if ($options['multiple'] && $options['expanded']) {
|
if ($options['multiple'] && $options['expanded']) {
|
||||||
$builder->setClientTransformer(new ArrayToChoicesTransformer($options['choice_list']));
|
$builder->setClientTransformer(new ArrayToBooleanChoicesTransformer($options['choice_list']));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!$options['multiple'] && $options['expanded']) {
|
if (!$options['multiple'] && $options['expanded']) {
|
||||||
$builder->setClientTransformer(new ScalarToChoicesTransformer($options['choice_list']));
|
$builder->setClientTransformer(new ScalarToBooleanChoicesTransformer($options['choice_list']));
|
||||||
$builder->addEventSubscriber(new FixRadioInputListener(), 10);
|
$builder->addEventSubscriber(new FixRadioInputListener(), 10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user