c79f98a55baf8fb648f6f6f6a37e555e38c741b7
tdreszer
Wed Jun 22 09:53:26 2011 -0700
Good idea to specify the db in the link to hgFileUi for downloadable files.
diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index 6d0ab7f..408d862 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -61,32 +61,32 @@
tdb = hashFindVal(trackHash, tdb->table);
if (tdb == NULL)
errAbort("Can't find track for table %s in wgEncodeDownloadDirKeeper", tdb->table);
}
return trackDbTopLevelSelfOrParent(tdb);
}
static char *htmlStringForDownloadsLink(char *database, struct trackDb *tdb,char *name,boolean nameIsFile,
struct hash *trackHash)
// Returns an HTML string for a downloads link
{
// If has fileSortOrder, then link to new hgFileUi
if (!nameIsFile && trackDbSetting(tdb, FILE_SORT_ORDER) != NULL)
{
char * link = needMem(PATH_LEN); // 512 should be enough
- safef(link,PATH_LEN,"%s", // NOTE: TARGET=ucscDownloads ??
- hgFileUiName(), /*cartSessionVarName(), cartSessionId(cart),*/ tdb->track, name); // Note the hgsid would be needed if downloads page ever saved fileSortOrder to cart.
+ safef(link,PATH_LEN,"%s", // NOTE: TARGET=ucscDownloads ??
+ hgFileUiName(), database, /*cartSessionVarName(), cartSessionId(cart),*/ tdb->track, name); // Note the hgsid would be needed if downloads page ever saved fileSortOrder to cart.
return link;
}
else if(trackDbSetting(tdb, "wgEncode") != NULL) // Downloads directory if this is ENCODE
{
struct trackDb *dirKeeper = wgEncodeDownloadDirKeeper(database, tdb, trackHash);
char *compositeDir = (sameWord(dirKeeper->type,"downloadsOnly")?dirKeeper->track:dirKeeper->table);
struct dyString *dyLink = dyStringCreate("%s",
hDownloadsServer(),
trackDbSettingOrDefault(dirKeeper, "origAssembly",database), // This may not be wise!!!
ENCODE_DCC_DOWNLOADS, compositeDir, (nameIsFile?name:""), nameIsFile?"file":"files",name);
return dyStringCannibalize(&dyLink);
}
return NULL;
}