4141dea14ea022600d97690b388dece619fe8256
angie
  Mon Jan 26 15:45:56 2015 -0800
All Tracks / All Tables groups are not yet working in hgAi; I have a
plan to fix it right, but for now, just omit those groups.
refs #14579

diff --git src/hg/lib/cartJson.c src/hg/lib/cartJson.c
index 4b517b1..a0e4218 100644
--- src/hg/lib/cartJson.c
+++ src/hg/lib/cartJson.c
@@ -446,32 +446,44 @@
 for (tdb = trackList;  tdb != NULL;  tdb = tdb->next)
     {
     struct slName *tableList = cartTrackDbTablesForTrack(db, tdb, FALSE); // no useJoiner for now
     jsonWriteSlNameList(cj->jw, tdb->track, tableList);
     slFreeList(&tableList);
     }
 jsonWriteObjectEnd(cj->jw);
 }
 
 void cartJsonGetGroupsTracksTables(struct cartJson *cj, struct hash *paramHash)
 /* Print info necessary for group/track/table menus. */
 {
 struct trackDb *fullTrackList = NULL;
 struct grp *fullGroupList = NULL;
 cartTrackDbInit(cj->cart, &fullTrackList, &fullGroupList, /* useAccessControl=*/TRUE);
-jsonWriteObjectStart(cj->jw, "trackDbInfo");
 // Print out options for the track group menu:
+// Remove All Tracks & All Tables from the end of the list for now.
+struct grp *grp, *nextGrp = NULL;
+for (grp = fullGroupList;  grp != NULL;  grp = nextGrp)
+    {
+    nextGrp = grp->next;
+    if (nextGrp && (sameString(nextGrp->name, "allTracks") ||
+                    sameString(nextGrp->name, "allTables")))
+        {
+        grp->next = nextGrp->next;
+        nextGrp = grp;
+        }
+    }
+jsonWriteObjectStart(cj->jw, "trackDbInfo");
 jsonWriteValueLabelList(cj->jw, "groupOptions", (struct slPair *)fullGroupList);
 // Print out an object that maps group names to their tracks:
 printGroupTracks(cj, fullTrackList);
 // Print out an object that maps track names to tables:
 printTrackTables(cj, fullTrackList);
 jsonWriteObjectEnd(cj->jw);
 }
 
 static char *hAssemblyDescription(char *db)
 /* Return a string containing db's description.html, or NULL if not found. */
 //#*** LIBIFY: Code lifted from hgFind.c's hgPositionsHelpHtml.
 {
 char *htmlPath = hHtmlPath(db);
 char *htmlString = NULL;
 if (htmlPath != NULL)