8624d6f5bbbf419f1f802f3a2f714d7c9f19db37
tdreszer
  Tue Mar 8 11:30:22 2011 -0800
SuperTracks offer links to hgFileUi CGI if the tdb says downloadsOnly
diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c
index 9b2f752..c637a47 100644
--- src/hg/hgTrackUi/hgTrackUi.c
+++ src/hg/hgTrackUi/hgTrackUi.c
@@ -2252,31 +2252,32 @@
 void superTrackUi(struct trackDb *superTdb)
 /* List tracks in this collection, with visibility controls and UI links */
 {
 struct trackDb *tdb;
 printf("<P><TABLE CELLPADDING=2>");
 tdbSortPrioritiesFromCart(cart, &superTdb->subtracks);
 for (tdb = superTdb->subtracks; tdb != NULL; tdb = tdb->next)
     {
     if (!hTableOrSplitExists(database, tdb->table)
     && tdb->subtracks != NULL && trackDbLocalSetting(tdb, "compositeTrack") == NULL
     && !tdbIsDownloadsOnly(tdb))
 	// NOTE: tdb if composite, is not yet populated with it's own subtracks!
         continue;
     printf("<TR>");
     printf("<TD NOWRAP><A HREF=\"%s?%s=%u&c=%s&g=%s\">%s</A>&nbsp;</TD>",
-                hgTrackUiName(), cartSessionVarName(), cartSessionId(cart),
+                (tdbIsDownloadsOnly(tdb)? hgFileUiName(): hgTrackUiName()),
+                cartSessionVarName(), cartSessionId(cart),
                 chromosome, cgiEncode(tdb->track), tdb->shortLabel);
     printf("<TD>");
     if (tdbIsDownloadsOnly(tdb))
         printf("&nbsp;");
     else
     {
         enum trackVisibility tv =
                         hTvFromString(cartUsualString(cart, tdb->track,
                                                 hStringFromTv(tdb->visibility)));
         hTvDropDownClassVisOnly(tdb->track, tv, tdb->canPack,
                                 tv == tvHide ?  "hiddenText" : "normalText",
                                 trackDbSetting(tdb, "onlyVisibility"));
     }
     printf("<TD>%s", tdb->longLabel);
     char *dataVersion = trackDbSetting(tdb, "dataVersion");