use translatable strign helper to translate string

This commit is contained in:
Julien Fastré 2018-05-16 22:08:53 +02:00
parent cacf6d0f3a
commit 84de2e148d
2 changed files with 17 additions and 6 deletions

View File

@ -16,6 +16,7 @@ use Doctrine\Common\Persistence\ObjectManager;
use Chill\CustomFieldsBundle\Service\CustomFieldProvider;
use Chill\CustomFieldsBundle\Form\DataTransformer\CustomFieldsGroupToIdTransformer;
use Chill\MainBundle\Form\Type\TranslatableStringFormType;
use Chill\MainBundle\Templating\TranslatableStringHelper;
class CustomFieldType extends AbstractType
@ -25,8 +26,12 @@ class CustomFieldType extends AbstractType
* @var CustomFieldProvider
*/
private $customFieldProvider;
private $culture = 'fr';
/**
*
* @var TranslatableStringHelper
*/
private $translatableStringHelper;
/**
* @var ObjectManager
@ -34,11 +39,14 @@ class CustomFieldType extends AbstractType
private $om;
public function __construct(CustomFieldProvider $compiler,
ObjectManager $om)
{
public function __construct(
CustomFieldProvider $compiler,
ObjectManager $om,
TranslatableStringHelper $translatableStringHelper
) {
$this->customFieldProvider = $compiler;
$this->om = $om;
$this->translatableStringHelper = $translatableStringHelper;
}
/**
* @param FormBuilderInterface $builder
@ -60,7 +68,9 @@ class CustomFieldType extends AbstractType
if ($options['group_widget'] === 'entity') {
$builder->add('customFieldsGroup', EntityType::class, array(
'class' => 'ChillCustomFieldsBundle:CustomFieldsGroup',
'property' => 'name['.$this->culture.']'
'choice_label' => function($g) {
return $this->translatableStringHelper->localize($g->getName());
}
));
} elseif ($options['group_widget'] === 'hidden') {
$builder->add('customFieldsGroup', HiddenType::class);

View File

@ -12,6 +12,7 @@ services:
arguments:
- "@chill.custom_field.provider"
- "@doctrine.orm.entity_manager"
- '@chill.main.helper.translatable_string'
tags:
- { name: 'form.type', alias: 'custom_field_choice' }