8757802b83b0fcf0cf1b071b2bebf4cf8b000c1b
kate
  Mon May 16 14:39:03 2016 -0700
Move metadata ahead of downloads and schema links for better presentation (as it is no longer a link).  This was needed to keep ENCODE track UI pages pretty.  refs #17314

diff --git src/hg/lib/hui.c src/hg/lib/hui.c
index e90ef6d..a8d8316 100644
--- src/hg/lib/hui.c
+++ src/hg/lib/hui.c
@@ -272,77 +272,74 @@
 // If metadata from metaTbl exists, create a link that will allow toggling it's display
 {
 const struct mdbObj *safeObj = metadataForTable(db,tdb,NULL);
 if (safeObj == NULL || safeObj->vars == NULL)
     return FALSE;
 
 printf("%s<A HREF='#a_meta_%s' onclick='return metadataShowHide(\"%s\",%s,true);' "
        "title='Show metadata details...'>%s<img src='../images/downBlue.png'/></A>",
        (embeddedInText?"&nbsp;":"<P>"),tdb->track,tdb->track, showLongLabel?"true":"false",
        (title?title:""));
 printf("<DIV id='div_%s_meta' style='display:none;'></div>",tdb->track);
 return TRUE;
 }
 
 void extraUiLinks(char *db,struct trackDb *tdb)
-// Show downloads, schema and metadata links where appropriate
+// Show metadata, and downloads, schema links where appropriate
 {
+boolean hasMetadata = (!tdbIsComposite(tdb) && !trackHubDatabase(db)
+                  && metadataForTable(db, tdb, NULL) != NULL);
+if (hasMetadata)
+    printf("<b>Metadata:</b><br>%s\n", metadataAsHtmlTable(db, tdb, FALSE, FALSE));
+
 boolean schemaLink = (!tdbIsDownloadsOnly(tdb) && !trackHubDatabase(db)
                   && isCustomTrack(tdb->table) == FALSE)
                   && (hTableOrSplitExists(db, tdb->table));
-boolean metadataLink = (!tdbIsComposite(tdb) && !trackHubDatabase(db)
-                  && metadataForTable(db, tdb, NULL) != NULL);
 boolean downloadLink = (trackDbSetting(tdb, "wgEncode") != NULL && !tdbIsSuperTrack(tdb));
 int links = 0;
 if (schemaLink)
     links++;
-if (metadataLink)
-    links++;
 if (downloadLink)
     links++;
 
 if (links > 0)
     cgiDown(0.7);
 if (links > 1)
     printf("<table><tr><td nowrap>View table: ");
 
 if (schemaLink)
     {
     makeSchemaLink(db,tdb,(links > 1 ? "schema":"View table schema"));
-    if (downloadLink || metadataLink)
+    if (downloadLink)
         printf(", ");
     }
 if (downloadLink)
     {
     // 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, (links > 1 ? "downloads":"Downloads"));
     freez(&targetDb);
-    if (metadataLink)
-        printf(",");
     }
-if (metadataLink)
-    printf("<b>Metadata:</b><br>%s\n", metadataAsHtmlTable(db, tdb, FALSE, FALSE));
 
 if (links > 1)
     printf("</td></tr></table>");
 }
 
 
 char *hUserCookie()
 /* Return our cookie name. */
 {
 return cfgOptionDefault("central.cookie", "hguid");
 }
 
 char *hDownloadsServer()
 /* get the downloads server from hg.conf or the default */
 {