829a1a35cc3c5bbdfe2293c9152a57872b1b8b12
braney
  Fri Dec 8 14:22:03 2017 -0800
redesign of hgCollection UI

diff --git src/hg/hgCollection/hgCollection.c src/hg/hgCollection/hgCollection.c
index b726d8a..f20f2d2 100644
--- src/hg/hgCollection/hgCollection.c
+++ src/hg/hgCollection/hgCollection.c
@@ -288,61 +288,50 @@
 jsInlineF("</ul>");
 jsInlineF("</li>");
 jsInlineF("</ul>");
 }
 
 static void doTable(struct cart *cart, char *db, struct grp *groupList, struct trackDb *trackList)
 // output the tree table
 {
 char *hubName = hubNameFromUrl(getHubName(cart, db));
 struct grp *curGroup;
 for(curGroup = groupList; curGroup;  curGroup = curGroup->next)
     {
     if ((hubName != NULL) && sameString(curGroup->name, hubName))
         break;
     }
+
+jsInlineF("$('#currentCollection').append(\"");
+jsInlineF("<div id='root'>");
 if (curGroup != NULL)
     {
     // print out all the tracks in all the collections
     struct trackDb *tdb;
-    jsInlineF("$('#currentCollection').append(\"");
     for(tdb = trackList; tdb;  tdb = tdb->next)
         {
         if (sameString(tdb->grp, hubName))
             {
-            jsInlineF("<div id='%s' shortLabel='%s'>", trackHubSkipHubName(tdb->track), tdb->shortLabel);
             jsInlineF("<ul>");
             printGroup("collections", tdb, TRUE, TRUE);
             jsInlineF("</ul>");
-            jsInlineF("</div>");
-            continue;
             }
         }
-    jsInlineF("\");\n");
-    
-    // print out all the collections
-    jsInlineF("$('#collectionList').append(\"");
-    for(tdb = trackList; tdb;  tdb = tdb->next)
-        {
-        if (sameString(tdb->grp, hubName))
-            {
-            jsInlineF("<li data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}' class='nodrop' id='%s'  name='%s'>%s</li>", trackHubSkipHubName(tdb->track),trackHubSkipHubName(tdb->track), tdb->shortLabel);
-            //printGroup("collections", tdb, TRUE, TRUE);
-            }
     }
+jsInlineF("</div>");
 jsInlineF("\");\n");
-    }
+
 jsInlineF("$('#tracks').append(\"");
 addVisibleTracks(cart, trackList);
 for(curGroup = groupList; curGroup;  curGroup = curGroup->next)
     {
     if ((hubName != NULL) && sameString(curGroup->name, hubName))
         continue;
     jsInlineF("<ul>");
     jsInlineF("<li data-jstree='{\\\"icon\\\":\\\"../images/folderC.png\\\"}' class='nodrop' name='%s'>%s", curGroup->name, curGroup->label );
     struct trackDb *tdb;
     jsInlineF("<ul>");
     for(tdb = trackList; tdb;  tdb = tdb->next)
         {
         if ( sameString(tdb->grp, curGroup->name))
             {
             printGroup(curGroup->name, tdb, FALSE, FALSE);