private function insertTwoBasket(EntityManager $em, \Pimple $DI) { $basket1 = new Basket(); $basket1->setUser($this->getUser()); $basket1->setName('test'); $basket1->setDescription('description test'); $element = new BasketElement(); $element->setRecord($DI['record_1']); $basket1->addElement($element); $element->setBasket($basket1); $basket2 = new Basket(); $basket2->setUser($this->getUser()); $basket2->setName('test'); $basket2->setDescription('description test'); $basket3 = new Basket(); $basket3->setUser($this->getUserAlt1()); $basket3->setName('test'); $basket3->setDescription('description test'); $em->persist($basket1); $em->persist($element); $em->persist($basket2); $em->persist($basket3); $basket4 = new Basket(); $basket4->setName('test'); $basket4->setDescription('description'); $basket4->setUser($this->getUser()); foreach ([$DI['record_1'], $DI['record_2']] as $record) { $basketElement = new BasketElement(); $basketElement->setRecord($record); $basketElement->setBasket($basket4); $basket4->addElement($basketElement); $em->persist($basketElement); } $validationSession = new ValidationSession(); $validationSession->setBasket($basket4); $basket4->setValidation($validationSession); $expires = new \DateTime(); $expires->modify('+1 week'); $validationSession->setExpires($expires); $validationSession->setInitiator($this->getUser()); foreach ([$this->getUser(), $DI['user_alt1'], $DI['user_alt2']] as $user) { $validationParticipant = new ValidationParticipant(); $validationParticipant->setUser($user); $validationParticipant->setSession($validationSession); $validationParticipant->setCanAgree(true); $validationSession->addParticipant($validationParticipant); foreach ($basket4->getElements() as $basketElement) { $data = new ValidationData(); $data->setParticipant($validationParticipant); $validationParticipant->addData($data); $data->setBasketElement($basketElement); $em->persist($data); } $em->persist($validationParticipant); } $em->persist($basket4); }
/** * {@inheritDoc} */ public function addElement(\Alchemy\Phrasea\Model\Entities\BasketElement $elements) { $this->__initializer__ && $this->__initializer__->__invoke($this, 'addElement', array($elements)); return parent::addElement($elements); }