/** * Publish a node or site * @param \ride\library\cms\node\Node $node Node to publish * @param string $revision Name of the published revision, falls back to the * default revision * @param boolean $recursive Flag to see if the node's children should be * published as well * @return null */ public function publishNode(Node $node, $revision = null, $recursive = true) { if ($revision === null) { $revision = $this->getDefaultRevision(); } if ($this->eventManager) { $eventArguments = array('action' => 'publish', 'description' => 'Publish node ' . $node->getName(), 'nodes' => array($node), 'revision' => $revision, 'recursive' => $recursive); $this->eventManager->triggerEvent(self::EVENT_PRE_ACTION, $eventArguments); } $deletedNodes = $this->io->publish($node, $revision, $recursive); if ($this->eventManager) { $eventArguments['deletedNodes'] = $deletedNodes; $this->eventManager->triggerEvent(self::EVENT_POST_ACTION, $eventArguments); } }