/** * Skip an optional page * */ public function do_skip() { if ($this->_applicant->getExternalId()) { $this->_controller->addMessage('error', 'You have already set your external ID, you must delete it before you can skip this page.'); return false; } if (!$this->_applicationPage->isRequired()) { $answer = new \Jazzee\Entity\Answer(); $answer->setPage($this->_applicationPage->getPage()); $this->_applicant->addAnswer($answer); $answer->setPageStatus(self::SKIPPED); $this->_controller->getEntityManager()->persist($answer); } }
public function newAnswer($input) { if (is_null($this->_applicationPage->getMax()) or count($this->getAnswers()) < $this->_applicationPage->getMax()) { $answer = new \Jazzee\Entity\Answer(); $answer->setPage($this->_applicationPage->getPage()); $this->_applicant->addAnswer($answer); foreach ($this->_applicationPage->getPage()->getElements() as $element) { $element->getJazzeeElement()->setController($this->_controller); foreach ($element->getJazzeeElement()->getElementAnswers($input->get('el' . $element->getId())) as $elementAnswer) { $answer->addElementAnswer($elementAnswer); } } $this->getForm()->applyDefaultValues(); $this->_controller->getEntityManager()->persist($answer); $this->_controller->addMessage('success', 'Answer Saved Successfully'); //flush here so the answerId will be correct when we view $this->_controller->getEntityManager()->flush(); } }