static public function changeHideStatus( $nodeID )
    {
        $action = 'hide';

        $curNode = eZContentObjectTreeNode::fetch( $nodeID );
        if ( is_object( $curNode ) )
        {
            if ( $curNode->attribute( 'is_hidden' ) )
            {
                eZContentObjectTreeNode::unhideSubTree( $curNode );
                $action = 'show';
            }
            else
            {
                eZContentObjectTreeNode::hideSubTree( $curNode );
            }

            // Notify cache system about visibility change
            ezpEvent::getInstance()->notify('content/cache', [
                [(int)$nodeID],
                [(int)$curNode->attribute('contentobject_id')]
            ]);
        }

        //call appropriate method from search engine
        eZSearch::updateNodeVisibility( $nodeID, $action );

        return array( 'status' => true );
    }