public function fill($answerId) { if ($answer = $this->_applicant->findAnswerById($answerId)) { foreach ($this->_applicationPage->getPage()->getElements() as $element) { $element->getJazzeeElement()->setController($this->_controller); $value = $element->getJazzeeElement()->formValue($answer); if ($value) { $this->getForm()->getElementByName('el' . $element->getId())->setValue($value); } } $this->getForm()->setAction($this->_controller->getActionPath() . "/edit/{$answerId}"); } }
/** * Make the form for the page * @return \Foundation\Form */ public function makeForm() { $form = new \Foundation\Form(); $form->setCSRFToken($this->_controller->getCSRFToken()); $form->setAction($this->_controller->getActionPath()); $field = $form->newField(); $field->setLegend($this->_applicationPage->getTitle()); $field->setInstructions($this->_applicationPage->getInstructions()); $element = $field->newElement('TextInput', 'externalId'); $element->setLabel($this->_applicationPage->getPage()->getVar('externalIdLabel')); $element->setValue($this->_applicant->getExternalId()); $element->addValidator(new \Foundation\Form\Validator\NotEmpty($element)); $element->addValidator(new \Foundation\Form\Validator\SpecialObject($element, array('object' => $this->_applicationPage->getApplication(), 'method' => 'validateExternalId', 'errorMessage' => 'This is not a valid External ID.'))); $form->newButton('submit', 'Save'); return $form; }