public function setDefaultOptions(OptionsResolverInterface $resolver) { /** @var OptionsResolver $resolver */ parent::setDefaultOptions($resolver); $resolver->setDefault('validation_groups', function (FormInterface $form) { $validationGroups = $this->validationGroups; if ((bool) $form->get('promotionCoupon')->getNormData()) { // Validate the coupon if it was sent $validationGroups[] = 'sylius_promotion_coupon'; } return $validationGroups; }); }
/** * {@inheritdoc} */ public function buildForm(FormBuilderInterface $builder, array $options) { parent::buildForm($builder, $options); $builder->add('shippingAddress', 'sylius_address')->add('billingAddress', 'sylius_address'); }