Ejemplo n.º 1
0
 /**
  * Checks if the passed node type is valid.
  *
  * @param NodeInterface $node
  * @param Constraint $constraint
  */
 public function validate($node, Constraint $constraint)
 {
     if (!in_array($node->getType(), $this->nodeProvider->getActiveNodeTypes($node))) {
         $nodeTypeName = $node->getType();
         if (null !== ($config = $this->nodeProvider->getNodeTypeConfig($node->getType()))) {
             $nodeTypeName = $config->getName();
         }
         $this->context->addViolation($constraint->message, array('%node_type%' => $nodeTypeName));
     }
 }
Ejemplo n.º 2
0
 /**
  * Get node icon.
  *
  * @param NodeInterface $node
  *
  * @return null|string
  */
 private function getIcon(NodeInterface $node)
 {
     if (null === $node->getParent()) {
         return $this->getRootNodeIcon();
     }
     if ($node->getType() && null !== ($config = $this->nodeProvider->getNodeTypeConfig($node->getType()))) {
         return $config->getIconPath();
     }
     return null;
 }
Ejemplo n.º 3
0
 /**
  * Get node types.
  *
  * @param NodeInterface $node
  *
  * @return array
  */
 private function getNodeTypes(NodeInterface $node)
 {
     $nodeTypes = array();
     if (null !== $node->getParent()) {
         foreach ($this->nodeProvider->getActiveNodeTypes($node) as $nodeType) {
             $nodeTypes[$nodeType] = $this->getNodeTypeName($this->nodeProvider->getNodeTypeConfig($nodeType));
         }
     }
     return $nodeTypes;
 }