Xtreamwayz\HTMLFormValidator\FormFactory::buildInputFilterFromForm PHP Method

buildInputFilterFromForm() private method

Build the InputFilter, validators and filters from form fields
private buildInputFilterFromForm ( Zend\InputFilter\InputFilterInterface $inputFilter )
$inputFilter Zend\InputFilter\InputFilterInterface
    private function buildInputFilterFromForm(InputFilterInterface $inputFilter)
    {
        foreach ($this->getNodeList() as $name => $node) {
            if ($inputFilter->has($name)) {
                continue;
            }
            // Detect element type
            $type = $node->getAttribute('type');
            if ($node->tagName === 'textarea') {
                $type = 'textarea';
            } elseif ($node->tagName === 'select') {
                $type = 'select';
            }
            // Add validation
            if (array_key_exists($type, $this->formElements)) {
                $elementClass = $this->formElements[$type];
            } else {
                // Create a default validator
                $elementClass = $this->formElements['text'];
            }
            /** @var \Zend\InputFilter\InputProviderInterface $element */
            $element = new $elementClass($node, $this->document);
            $input = $this->factory->createInput($element);
            $inputFilter->add($input, $name);
        }
    }