public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('TextInput', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } if ($this->_element->getMin()) { $validator = new \Foundation\Form\Validator\MinimumLength($element, (int) $this->_element->getMin()); $element->addValidator($validator); } //restrict to 255 for DB if (!$this->_element->getMax() or $this->_element->getMax() > 255) { $max = 255; } else { $max = (int) $this->_element->getMax(); } $validator = new \Foundation\Form\Validator\MaximumLength($element, $max); $element->addValidator($validator); $element->addFilter(new \Foundation\Form\Filter\Safe($element)); return $element; }
public function addToField(\Foundation\Form\Field $field) { if (!ini_get('file_uploads')) { throw new \Jazzee\Exception('File uploads are not turned on for this system and a PDFFileInputElement is being created', E_ERROR); } $element = $field->newElement('FileInput', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } if ($this->_controller->getConfig()->getVirusScanUploads()) { $element->addValidator(new \Foundation\Form\Validator\Virusscan($element)); } $element->addValidator(new \Foundation\Form\Validator\PDF($element)); $element->addValidator(new \Foundation\Form\Validator\PDFNotEncrypted($element)); $element->addFilter(new \Foundation\Form\Filter\Blob($element)); $max = $this->_controller->getConfig()->getMaximumApplicantFileUploadSize(); if ($this->_element->getMax() and \Foundation\Utility::convertIniShorthandValue($this->_element->getMax()) <= $max) { $max = $this->_element->getMax(); } else { $max = $this->_controller->getConfig()->getDefaultApplicantFileUploadSize(); } $element->addValidator(new \Foundation\Form\Validator\MaximumFileSize($element, $max)); return $element; }
public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('Textarea', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } if ($this->_element->getMin()) { $validator = new \Foundation\Form\Validator\MinimumLength($element, (int) $this->_element->getMin()); $element->addValidator($validator); } //restrict to 1M chars so the DB cant be filled with 4GB text dumps if (!$this->_element->getMax() or $this->_element->getMax() > 1000000) { $max = 1000000; } else { $max = (int) $this->_element->getMax(); } $validator = new \Foundation\Form\Validator\MaximumLength($element, $max); $element->addValidator($validator); $element->addFilter(new \Foundation\Form\Filter\Safe($element)); return $element; }
public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('ShortDateInput', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } $filter = new \Foundation\Form\Filter\DateFormat($element, 'c'); $element->addFilter($filter); return $element; }
public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('TextInput', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } $validator = new \Foundation\Form\Validator\EmailAddress($element, true); $element->addValidator($validator); return $element; }
public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('RadioList', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } foreach ($this->_element->getListItems() as $item) { if ($item->isActive()) { $element->newItem($item->getId(), $item->getValue()); } } return $element; }
public function addToField(\Foundation\Form\Field $field) { $element = $field->newElement('SearchList', 'el' . $this->_element->getId()); $element->setLabel($this->_element->getTitle()); $element->setInstructions($this->_element->getInstructions()); $element->setFormat($this->_element->getFormat()); $element->setDefaultValue($this->_element->getDefaultValue()); if ($this->_element->isRequired()) { $validator = new \Foundation\Form\Validator\NotEmpty($element); $element->addValidator($validator); } $element->newItem('', ''); foreach ($this->_element->getListItems() as $item) { if ($item->isActive()) { $listItem = $element->newItem($item->getId(), $item->getValue()); $listItem->addMetadata($item->getVar('searchTerms')); } } $this->_controller->addScript($this->_controller->path('resource/foundation/scripts/SearchListElement.js')); return $element; }