Eccube\Form\Type\AddressType::buildForm PHP Метод

buildForm() публичный Метод

public buildForm ( Symfony\Component\Form\FormBuilderInterface $builder, array $options )
$builder Symfony\Component\Form\FormBuilderInterface
$options array
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $options['pref_options']['required'] = $options['required'];
        $options['addr01_options']['required'] = $options['required'];
        $options['addr02_options']['required'] = $options['required'];
        // required の場合は NotBlank も追加する
        if ($options['required']) {
            $options['pref_options']['constraints'] = array_merge(array(new Assert\NotBlank(array())), $options['pref_options']['constraints']);
            $options['addr01_options']['constraints'] = array_merge(array(new Assert\NotBlank(array())), $options['addr01_options']['constraints']);
            $options['addr02_options']['constraints'] = array_merge(array(new Assert\NotBlank(array())), $options['addr02_options']['constraints']);
        }
        if (!isset($options['options']['error_bubbling'])) {
            $options['options']['error_bubbling'] = $options['error_bubbling'];
        }
        $builder->add($options['pref_name'], 'pref', array_merge_recursive($options['options'], $options['pref_options']))->add($options['addr01_name'], 'text', array_merge_recursive($options['options'], $options['addr01_options']))->add($options['addr02_name'], 'text', array_merge_recursive($options['options'], $options['addr02_options']));
        $builder->setAttribute('pref_name', $options['pref_name']);
        $builder->setAttribute('addr01_name', $options['addr01_name']);
        $builder->setAttribute('addr02_name', $options['addr02_name']);
    }