<?php 
 
namespace DcSiteBundle\Form; 
 
use CoreBundle\Entity\Vehicles\Vehicle; 
use CoreBundle\Form\CoreFormsType; 
use Symfony\Bridge\Doctrine\Form\Type\EntityType; 
use Symfony\Component\Form\Extension\Core\Type\ChoiceType; 
use Symfony\Component\Form\Extension\Core\Type\TextareaType; 
use Symfony\Component\Form\FormBuilderInterface; 
use Symfony\Component\OptionsResolver\OptionsResolver; 
 
class BuyType extends CoreFormsType 
{ 
    public function buildForm(FormBuilderInterface $builder, array $options) 
    { 
        parent::buildForm($builder, $options); 
 
        $translator = $options['translator']; 
 
        $messageType = [ 
 
            'call' => $translator->trans('form.call',[],'dc_base'), 
            'viber' => 'Viber', 
        ]; 
 
        $queryBuilder = $options['query_builder']; 
        $builder->add( 
            'vehicle', 
            EntityType::class, [ 
                'label' => false, 
                'class' => Vehicle::class, 
                'query_builder' => $queryBuilder, 
            ] 
        ); 
        $builder->add('comment', TextareaType::class, [ 
            'label' => false, 
            'required' => false, 
            'mapped' => false, 
        ]); 
        $builder->add('message_type', ChoiceType::class, [ 
            'choices' => array_flip($messageType), 
            'required' => true, 
            'mapped' => false, 
            'label' => false, 
            'expanded' => true, 
            'multiple' => false, 
            'data' => 'call', 
        ]); 
    } 
 
    /** 
     * @param OptionsResolver $resolver 
     */ 
    public function configureOptions(OptionsResolver $resolver) 
    { 
        parent::configureOptions($resolver); 
        $resolver->setDefined('car'); 
        $resolver->setDefined('variationId'); 
        $resolver->setDefault('query_builder', null); 
        $resolver->setDefault('captcha_type', 'buy_car_form'); 
    } 
}