Author: sevein
Date: Tue Oct 13 09:32:30 2009
New Revision: 3730

Log:
YUI treeview nodes are not append to newParent anymore when drag&drop if 
newParent hasn't been load yet. Fixes issue 1039.

Modified:
   trunk/web/js/treeView.js

Modified: trunk/web/js/treeView.js
==============================================================================
--- trunk/web/js/treeView.js    Tue Oct 13 00:02:26 2009        (r3729)
+++ trunk/web/js/treeView.js    Tue Oct 13 09:32:30 2009        (r3730)
@@ -29,7 +29,6 @@
                 var newParent = parentNode.tree.getNodeByElement($('#' + 
id)[0]);
 
                 jQuery.ajax({
-
                   data: { parent: newParent.qubit_id },
                   type: 'POST',
                   url: 
textNode.href.replace(/\/(informationobject|term)\/\D*(\d+)/, '/$1/move/$2') });
@@ -49,20 +48,28 @@
                     dd.invalidHandleTypes = {};
                   });
 
-                textNode.appendTo(newParent);
-
-                newParent.refresh();
+                if (newParent.expanded || newParent.isLeaf)
+                {
+                  textNode.appendTo(newParent);
 
-                $('.ygtvlabel', '#' + 
newParent.getChildrenElId()).each(function ()
+                  if (newParent.isLeaf)
                   {
-                    var dd = 
YAHOO.util.DragDropMgr.getDDById($(this).attr('id'));
+                    newParent.isLeaf = false;
+                  }
 
-                    dd.unreg();
+                  newParent.refresh();
 
-                    dd.init($(this).attr('id'));
+                  $('.ygtvlabel', '#' + 
newParent.getChildrenElId()).each(function ()
+                    {
+                      var dd = 
YAHOO.util.DragDropMgr.getDDById($(this).attr('id'));
 
-                    dd.invalidHandleTypes = {};
-                  });
+                      dd.unreg();
+
+                      dd.init($(this).attr('id'));
+
+                      dd.invalidHandleTypes = {};
+                    });
+                }
               };
 
             dd.endDrag = function ()
@@ -131,20 +138,28 @@
                           dd.invalidHandleTypes = {};
                         });
 
-                      textNode.appendTo(newParent);
-
-                      newParent.refresh();
+                      if (newParent.expanded || newParent.isLeaf)
+                      {
+                        textNode.appendTo(newParent);
 
-                      $('.ygtvlabel', '#' + 
newParent.getChildrenElId()).each(function ()
+                        if (newParent.isLeaf)
                         {
-                          var dd = 
YAHOO.util.DragDropMgr.getDDById($(this).attr('id'));
+                          newParent.isLeaf = false;
+                        }
 
-                          dd.unreg();
+                        newParent.refresh();
 
-                          dd.init($(this).attr('id'));
+                        $('.ygtvlabel', '#' + 
newParent.getChildrenElId()).each(function ()
+                          {
+                            var dd = 
YAHOO.util.DragDropMgr.getDDById($(this).attr('id'));
 
-                          dd.invalidHandleTypes = {};
-                        });
+                            dd.unreg();
+
+                            dd.init($(this).attr('id'));
+
+                            dd.invalidHandleTypes = {};
+                          });
+                      }
                     };
 
                   dd.endDrag = function ()

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.ca/group/qubit-commits?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to