public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('rating', ChoiceType::class, ['choices' => $this->createRatingList($options['rating_steps']), 'label' => 'sylius.form.review.rating', 'expanded' => true, 'multiple' => false, 'constraints' => [new Valid()]])->add('title', TextType::class, ['label' => 'sylius.form.review.title'])->add('comment', TextareaType::class, ['label' => 'sylius.form.review.comment']);
}
/** * {@inheritdoc} */ public function buildForm(FormBuilderInterface $builder, array $options) { parent::buildForm($builder, $options); $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) use($options) { $form = $event->getForm(); $review = $event->getData(); Assert::isInstanceOf($review, ReviewInterface::class); if (null === $review->getAuthor()) { $form->add('author', CustomerGuestType::class, ['constraints' => [new Valid()]]); } }); }