public function doesPublicIdExist($id, Node $node) { if ($node->getId()) { $s = $this->getEntityManager()->createQuery(' SELECT nhlciv FROM QuestionKeyBundle:NodeHasLibraryContentIfVariable nhlciv' . ' WHERE nhlciv.node = :node AND nhlciv.publicId = :public_id')->setParameter('node', $node)->setParameter('public_id', $id)->getResult(); return (bool) $s; } else { return false; } }
private function isNodeReachable(Node $node, TreeVersionStartingNode $treeVersionStartingNode) { if ($treeVersionStartingNode && $treeVersionStartingNode->getNode()->getId() == $node->getId()) { return true; } $nodeOptionRepo = $this->doctrine->getRepository('QuestionKeyBundle:NodeOption'); foreach ($nodeOptionRepo->findActiveIncomingNodeOptionsForNode($node) as $nodeOption) { if ($this->isNodeReachable($nodeOption->getNode(), $treeVersionStartingNode)) { return true; } } return false; }