public function load(ObjectManager $manager) { $petition = new GroupPetition(); $petition->setPetitionTitle('Petition title'); $petition->setPetitionBody('Petition body'); $petition->setUser($this->getReference('group-group1')); $petition->setPublishedAt(new \DateTime('now')); $option = new Option(); $option->setQuestion($petition)->setValue('sign'); $this->addReference('petition1', $petition); $this->addReference('petition-option1', $option); $manager->persist($option); $manager->persist($petition); $manager->flush(); }
/** * @Route("/new") * @Template("CivixFrontBundle:Petition:new.html.twig") */ public function newAction(Request $request) { $class = $this->getPetitionClass(); $petitionFormClass = $this->getPetitionFormClass(); $petition = new $class(); $form = $this->createForm(new $petitionFormClass($this->getUser()), new PetitionFormModel($petition)); if ('POST' === $request->getMethod()) { if ($form->submit($request)->isValid()) { $manager = $this->getDoctrine()->getManager(); $petition->setUser($this->getUser()); /* @var $educationalContext \Civix\FrontBundle\Form\Model\EducationalContext */ $educationalContext = $form->getData()->getEducationalContext(); $petition->clearEducationalContext(); foreach ($educationalContext->getItems() as $item) { if ($item->getImageFile()) { $this->get('vich_uploader.storage')->upload($item); } /** * @var $entity \Civix\CoreBundle\Entity\Poll\EducationalContext */ $entity = $item->createEntity(); if ($entity) { $entity->setQuestion($petition); $manager->persist($entity); } } $option = new Option(); $option->setQuestion($petition)->setValue('sign'); $manager->persist($option); $manager->persist($petition); $manager->flush(); $this->get('session')->getFlashBag()->add('notice', 'The petition has been successfully saved'); return $this->redirect($this->generateUrl("civix_front_{$this->getUser()->getType()}_petition_index")); } } return ['form' => $form->createView(), 'isShowGroupSection' => $this->isShowGroupSections($petition)]; }
/** * Add options * * @param Option $options * * @return Question */ public function addOption(Option $options) { $options->setQuestion($this); $this->options[] = $options; return $this; }
public function setQuestion(\Civix\CoreBundle\Entity\Poll\Question $question = NULL) { $this->__load(); return parent::setQuestion($question); }