/** * Update the LOR * @param \Foundation\Form\Input $input * @param \Jazzee\Entity\Answer $answer */ public function updateLorAnswer(\Foundation\Form\Input $input, \Jazzee\Entity\Answer $answer) { foreach ($answer->getElementAnswers() as $ea) { $answer->getElementAnswers()->removeElement($ea); $this->_controller->getEntityManager()->remove($ea); } foreach ($answer->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->getForm()->setAction($this->_controller->getActionPath()); $this->_controller->getEntityManager()->persist($answer); }
public function updateLorAnswer(\Foundation\Form\Input $input, \Jazzee\Entity\Answer $answer) { foreach ($answer->getElementAnswers() as $ea) { $this->_controller->getEntityManager()->remove($ea); $answer->getElementAnswers()->removeElement($ea); } foreach ($answer->getChildren() as $childAnswer) { $this->_controller->getEntityManager()->remove($childAnswer); $answer->getChildren()->removeElement($childAnswer); } $branch = new \Jazzee\Entity\Answer(); $answer->addChild($branch); $branch->setPage($answer->getPage()->getChildById($input->get('branching'))); foreach ($branch->getPage()->getElements() as $element) { foreach ($element->getJazzeeElement()->getElementAnswers($input->get('el' . $element->getId())) as $elementAnswer) { $branch->addElementAnswer($elementAnswer); } } $this->_form = null; $this->_controller->getEntityManager()->persist($branch); }