コード例 #1
0
 /**
  * @param HasNodeInterface $hasNode         The object
  * @param NodeTranslation  $nodeTranslation The node translation
  * @param BaseUser         $owner           The user
  * @param NodeVersion      $origin          The nodeVersion this nodeVersion originated from
  * @param string           $type            (public|draft)
  * @param DateTime         $created         The date this node version is created
  *
  * @return NodeVersion
  */
 public function createNodeVersionFor(HasNodeInterface $hasNode, NodeTranslation $nodeTranslation, BaseUser $owner, NodeVersion $origin = null, $type = 'public', $created = null)
 {
     $em = $this->getEntityManager();
     $nodeVersion = new NodeVersion();
     $nodeVersion->setNodeTranslation($nodeTranslation);
     $nodeVersion->setType($type);
     $nodeVersion->setOwner($owner);
     $nodeVersion->setRef($hasNode);
     $nodeVersion->setOrigin($origin);
     if (!is_null($created)) {
         $nodeVersion->setCreated($created);
     }
     $em->persist($nodeVersion);
     $em->flush();
     $em->refresh($nodeVersion);
     return $nodeVersion;
 }
コード例 #2
0
 public function postFlushBuild(Fixture $fixture)
 {
     $entities = $fixture->getAdditionalEntities();
     $fixtureParams = $fixture->getParameters();
     foreach ($fixture->getTranslations() as $language => $data) {
         /** @var HasNodeInterface $page */
         $page = $entities[$fixture->getName() . '_' . $language];
         /** @var NodeTranslation $translationNode */
         $translationNode = $entities['translationNode_' . $language];
         $pagecreator = array_key_exists('creator', $fixtureParams) ? $fixtureParams['creator'] : 'pagecreator';
         $creator = $this->userRepo->findOneBy(array('username' => $pagecreator));
         $nodeVersion = new NodeVersion();
         $nodeVersion->setNodeTranslation($translationNode);
         $nodeVersion->setType('public');
         $nodeVersion->setOwner($creator);
         $nodeVersion->setRef($page);
         $translationNode->setPublicNodeVersion($nodeVersion);
         if (isset($fixtureParams['template'])) {
             $pageTemplateConfiguration = new PageTemplateConfiguration();
             $pageTemplateConfiguration->setPageId($page->getId());
             $pageTemplateConfiguration->setPageEntityName(ClassLookup::getClass($page));
             $pageTemplateConfiguration->setPageTemplate($fixtureParams['template']);
             $this->manager->persist($pageTemplateConfiguration);
         }
         $this->manager->persist($nodeVersion);
         $this->manager->persist($translationNode);
     }
     $this->manager->flush();
 }
コード例 #3
0
 /**
  * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::setOwner
  * @covers Kunstmaan\NodeBundle\Entity\NodeVersion::getOwner
  */
 public function testSetGetOwner()
 {
     $this->object->setOwner('owner');
     $this->assertEquals('owner', $this->object->getOwner());
 }