/** * Create a new display */ public function actionSaveDisplay() { $obj = json_decode($this->post['display']); if ($display = $this->_em->getRepository('Jazzee\\Entity\\Display')->findOneBy(array('id' => $obj->id, 'user' => $this->_user))) { $display->setName($obj->name); foreach ($display->getElements() as $displayElement) { $display->getElements()->removeElement($displayElement); $this->getEntityManager()->remove($displayElement); } $maximumUserDisplay = $this->_user->getMaximumDisplayForApplication($this->_application); foreach ($obj->elements as $eObj) { $tempDisplayElement = new \Jazzee\Display\Element($eObj->type, $eObj->title, $eObj->weight, $eObj->name, isset($eObj->pageId) ? $eObj->pageId : null); if ($maximumUserDisplay->hasDisplayElement($tempDisplayElement)) { $displayElement = \Jazzee\Entity\DisplayElement::createFromDisplayElement($tempDisplayElement, $this->_application); $display->addElement($displayElement); $this->getEntityManager()->persist($displayElement); } } $this->_em->persist($display); $this->addMessage('success', $display->getName() . ' saved'); } $this->loadView('applicants_single/result'); }
/** * Save the display */ public function actionSaveDisplay() { $this->layout = 'json'; $obj = json_decode($this->post['display']); if ($role = $this->_em->getRepository('\\Jazzee\\Entity\\Role')->findOneBy(array('id' => $obj->roleId, 'program' => $this->_program->getId())) and $display = $role->getDisplayForApplication($this->_application)) { $display->setName($obj->name); foreach ($display->getElements() as $displayElement) { $display->getElements()->removeElement($displayElement); $this->getEntityManager()->remove($displayElement); } $maximumUserDisplay = $this->_user->getMaximumDisplayForApplication($this->_application); foreach ($obj->elements as $eObj) { $tempDisplayElement = new \Jazzee\Display\Element($eObj->type, $eObj->title, $eObj->weight, $eObj->name, isset($eObj->pageId) ? $eObj->pageId : null); if ($maximumUserDisplay->hasDisplayElement($tempDisplayElement)) { $displayElement = \Jazzee\Entity\DisplayElement::createFromDisplayElement($tempDisplayElement, $this->_application); $display->addElement($displayElement); $this->getEntityManager()->persist($displayElement); } } $this->_em->persist($display); $this->addMessage('success', $display->getName() . ' saved'); } $this->setVar('result', 'nothing'); $this->loadView('setup_roles/result'); }