 
   expand:(nodeView)->
 
-    nodeData = nodeView.getData()
-    nodeView.expand()
-    @listControllers[@getNodeId nodeData]?.getView().expand()
+    if nodeView?.getData?
+      nodeData = nodeView.getData()
+      nodeView.expand()
+      @listControllers[@getNodeId nodeData]?.getView().expand()
 
   collapse:(nodeView)->
 


    o = @getOptions()
    listToBeAdded = @listControllers[id].getView()
    if nodeView
      nodeView.$().after listToBeAdded.$()
      listToBeAdded.parentIsInDom = yes
      listToBeAdded.propagateEvent KDEventType: 'viewAppended'


    # if node parent is present
    parentNodeView = @nodes[@getNodePId nodeData]
    if parentNodeView?.getData?
      prevNeighbor  = getPreviousNeighbor parentNodeView.getData()
      neighborIndex = @indexedNodes.indexOf prevNeighbor
      @indexedNodes.splice neighborIndex + 1, 0, nodeData
