dba108266ef59d9dd15ec7bb2cd19e9996d2a1f2
tdreszer
  Wed Nov 24 12:14:13 2010 -0800
Fix for redmine 1883. NHGRI BIPs are found in 7 different genomes but only hg18 has downloads.
diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index ea38a54..da294d7 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -266,31 +266,43 @@
                    || (schemaLink && downloadLink)
                    || (downloadLink && metadataLink);
 
 printf("<P>");
 if(moreThanOne)
     printf("<table><tr><td nowrap>View table: ");
 
 if(schemaLink)
     {
     makeSchemaLink(db,tdb,(moreThanOne ? "schema":"View table schema"));
     if(downloadLink || metadataLink)
         printf(", ");
     }
 if(downloadLink)
     {
-    makeNamedDownloadsLink(db, tdb, (moreThanOne ? "downloads":"Downloads"), trackHash);
+    // special case exception (hg18:NHGRI BiPs are in 7 different dbs but only hg18 has downloads):
+    char *targetDb = trackDbSetting(tdb, "compareGenomeLinks");
+    if (targetDb != NULL)
+        {
+        targetDb = cloneFirstWordByDelimiter(targetDb,'=');
+        if (!startsWith("hg",targetDb))
+            freez(&targetDb);
+        }
+    if (targetDb == NULL)
+        targetDb = cloneString(db);
+
+    makeNamedDownloadsLink(targetDb, tdb, (moreThanOne ? "downloads":"Downloads"), trackHash);
+    freez(&targetDb);
     if(metadataLink)
         printf(",");
     }
 if (metadataLink)
     compositeMetadataToggle(db,tdb,"metadata", TRUE, TRUE, trackHash);
 
 if(moreThanOne)
     printf("</td></tr></table>");
 
 puts("</P>");
 }
 
 
 char *hUserCookie()
 /* Return our cookie name. */