add: return false;  var srcDirectory = GetDirectoryFromURI(srcURI);  var dragSession = dragService.getCurrentSession(); if (!dragSession) return false;   if (!(srcDirectory.operations & srcDirectory.opWrite) && dragSession.dragAction != Components.interfaces. nsIDragService.DRAGDROP_ACTION_COPY) 
context:     canDrop: function(index, orientation)    {      if (orientation != Components.interfaces.nsITreeView.DROP_ON)        return false;      var targetResource = dirTree.builderView.getResourceAtIndex(index);      var targetURI = targetResource.Value;      var srcURI = GetSelectedDirectory();      if (targetURI == srcURI)        return false;      // determine if we dragging from a mailing list on a directory x to the parent (directory x).      // if so, don't allow the drop      var result = srcURI.split(targetURI);      if (result != srcURI)         return false;      // check if we can write to the target directory       // LDAP is readonly      var targetDirectory = GetDirectoryFromURI(targetURI);      return (targetDirectory.isMailList ||              (targetDirectory.operations & targetDirectory.opWrite));    },
meta: 5872	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/5872/2353c994b0e17c0321da3ee735ed5f0eba7bda38/abDragDrop.js/buggy/mailnews/addrbook/resources/content/abDragDrop.js