Neos.Neos/Classes/Controller/Frontend/NodeController.php
public function showAction(NodeInterface $node = null)
    {
        if ($node === null) {
            throw new NodeNotFoundException('The requested node does not exist or isn\'t accessible to the current user', 1430218623);
        }

        $inBackend = $node->getContext()->isInBackend();

        if ($node->getNodeType()->isOfType('Neos.Neos:Shortcut') && !$inBackend) {
            $this->handleShortcutNode($node);
        }

        $this->view->assign('value', $node);

        if ($inBackend) {
            $this->overrideViewVariablesFromInternalArguments();
            $this->response->setHeader('Cache-Control', 'no-cache');
            if (!$this->view->canRenderWithNodeAndPath()) {
                $this->view->setFusionPath('rawContent');
            }
        }

        if ($this->session->isStarted() && $inBackend) {
            $this->session->putData('lastVisitedNode', $node->getContextPath());
        }
    }
public function showAction(NodeInterface $node = null)
    {
        if ($node === null) {
            throw new NodeNotFoundException('The requested node does not exist or isn\'t accessible to the current user', 1430218623);
        }

        $inBackend = $node->getContext()->isInBackend();

        if ($node->getNodeType()->isOfType('Neos.Neos:Shortcut') && !$inBackend) {
            $this->handleShortcutNode($node);
        }

        $this->view->assign('value', $node);

        if ($inBackend) {
            $this->overrideViewVariablesFromInternalArguments();
            $this->response->setHeader('Cache-Control', 'no-cache');
            if (!$this->view->canRenderWithNodeAndPath()) {
                $this->view->setFusionPath('rawContent');
            }
        }

        if ($this->session->isStarted() && $inBackend) {
            $this->session->putData('lastVisitedNode', $node->getContextPath());
        }
    }
public function showAction ( NodeInterface $ node = null ) { if ( $ node === null ) { throw new NodeNotFoundException ( 'The requested node does not exist or isn\'t accessible to the current user' , 1430218623 ) ; } $ inBackend = $ node -> getContext ( ) -> isInBackend ( ) ; if ( $ node -> getNodeType ( ) -> isOfType ( 'Neos.Neos:Shortcut' ) && ! $ inBackend ) { $ this -> handleShortcutNode ( $ node ) ; } $ this -> view -> assign ( 'value' , $ node ) ; if ( $ inBackend ) { $ this -> overrideViewVariablesFromInternalArguments ( ) ; $ this -> response -> setHeader ( 'Cache-Control' , 'no-cache' ) ; if ( ! $ this -> view -> canRenderWithNodeAndPath ( ) ) { $ this -> view -> setFusionPath ( 'rawContent' ) ; } } if ( $ this -> session -> isStarted ( ) && $ inBackend ) { $ this -> session -> putData ( 'lastVisitedNode' , $ node -> getContextPath ( ) ) ; } }
Shows the specified node and takes visibility and access restrictions into
account.

@param NodeInterface $node
@return string View output for the specified node
@Flow\SkipCsrfProtection We need to skip CSRF protection here because this action could be called with unsafe requests from widgets or plugins that are rendered on the node - For those the CSRF token is validated on the sub-request, so it is safe to be skipped here
@Flow\IgnoreValidation("node")
@throws NodeNotFoundException
Shows the specified node and takes visibility and access restrictions into account .