diff --git a/src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php b/src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php index 3c9b83bf4..617d1afce 100644 --- a/src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php +++ b/src/Bundle/ChillMainBundle/Form/Type/Select2CountryType.php @@ -27,6 +27,7 @@ use Symfony\Component\Form\FormBuilderInterface; use Chill\MainBundle\Form\Type\DataTransformer\ObjectToIdTransformer; use Doctrine\Persistence\ObjectManager; use Chill\MainBundle\Form\Type\Select2ChoiceType; +use Chill\MainBundle\Templating\TranslatableStringHelper; /** * Extends choice to allow adding select2 library on widget @@ -41,15 +42,26 @@ class Select2CountryType extends AbstractType */ private $requestStack; + /** + * + * @var TranslatableStringHelper + */ + protected $translatableStringHelper; + /** * @var ObjectManager */ private $em; - public function __construct(RequestStack $requestStack,ObjectManager $em) + public function __construct( + RequestStack $requestStack, + ObjectManager $em, + TranslatableStringHelper $translatableStringHelper + ) { $this->requestStack = $requestStack; $this->em = $em; + $this->translatableStringHelper = $translatableStringHelper; } public function getBlockPrefix() @@ -75,7 +87,7 @@ class Select2CountryType extends AbstractType $choices = array(); foreach ($countries as $c) { - $choices[$c->getId()] = $c->getName()[$locale]; + $choices[$c->getId()] = $this->translatableStringHelper->localize($c->getName()); } asort($choices, SORT_STRING | SORT_FLAG_CASE); diff --git a/src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php b/src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php index 147e9797a..2c8dea857 100644 --- a/src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php +++ b/src/Bundle/ChillMainBundle/Form/Type/Select2LanguageType.php @@ -27,6 +27,7 @@ use Symfony\Component\Form\FormBuilderInterface; use Chill\MainBundle\Form\Type\DataTransformer\MultipleObjectsToIdTransformer; use Doctrine\Persistence\ObjectManager; use Chill\MainBundle\Form\Type\Select2ChoiceType; +use Chill\MainBundle\Templating\TranslatableStringHelper; /** * Extends choice to allow adding select2 library on widget for languages (multiple) @@ -43,10 +44,21 @@ class Select2LanguageType extends AbstractType */ private $em; - public function __construct(RequestStack $requestStack,ObjectManager $em) + /** + * + * @var TranslatableStringHelper + */ + protected $translatableStringHelper; + + public function __construct( + RequestStack $requestStack, + ObjectManager $em, + TranslatableStringHelper $translatableStringHelper + ) { $this->requestStack = $requestStack; $this->em = $em; + $this->translatableStringHelper = $translatableStringHelper; } public function getBlockPrefix() @@ -72,7 +84,7 @@ class Select2LanguageType extends AbstractType $choices = array(); foreach ($languages as $l) { - $choices[$l->getId()] = $l->getName()[$locale]; + $choices[$l->getId()] = $this->translatableStringHelper->localize($l->getName()); } asort($choices, SORT_STRING | SORT_FLAG_CASE); diff --git a/src/Bundle/ChillMainBundle/config/services/form.yaml b/src/Bundle/ChillMainBundle/config/services/form.yaml index 513553194..5a694a417 100644 --- a/src/Bundle/ChillMainBundle/config/services/form.yaml +++ b/src/Bundle/ChillMainBundle/config/services/form.yaml @@ -23,6 +23,7 @@ services: arguments: - "@request_stack" - "@doctrine.orm.entity_manager" + - "@chill.main.helper.translatable_string" tags: - { name: form.type, alias: select2_chill_country } @@ -31,6 +32,7 @@ services: arguments: - "@request_stack" - "@doctrine.orm.entity_manager" + - "@chill.main.helper.translatable_string" tags: - { name: form.type, alias: select2_chill_language }