2161b092dabc07a0314a23b67266347a27fc4596
hiram
  Fri Apr 22 15:16:52 2011 -0700
add specific Ensembl gene version string in longLabel for hgTracks and hgTrackUi
diff --git src/hg/hgTracks/hgTracks.c src/hg/hgTracks/hgTracks.c
index fa82cff..44c37a1 100644
--- src/hg/hgTracks/hgTracks.c
+++ src/hg/hgTracks/hgTracks.c
@@ -3512,54 +3512,34 @@
     }
 
 if (!psOutput)
     {
     /* disable Convert function for CGB servers for the time being */
     if (!hIsCgbServer())
     if (liftOverChainForDb(database) != NULL)
         {
         hPrintf("<TD ALIGN=CENTER>&nbsp;&nbsp;<A HREF=\"");
         hPrintf("../cgi-bin/hgConvert?%s&db=%s&position=%s:%d-%d",
             uiVars->string, database, chromName, winStart+1, winEnd);
         hPrintf("\" class=\"topbar\">Convert</A>&nbsp;&nbsp;</TD>");
         }
     }
 
-/* see if hgFixed.trackVersion exists */
-boolean trackVersionExists = hTableExists("hgFixed", "trackVersion");
 char ensVersionString[256];
 char ensDateReference[256];
-ensVersionString[0] = 0;
-ensDateReference[0] = 0;
-if (trackVersionExists)
-    {
-    struct sqlConnection *conn = hAllocConn("hgFixed");
-    char query[256];
-    safef(query, sizeof(query), "select version,dateReference from hgFixed.trackVersion where db = '%s' order by updateTime DESC limit 1", database);
-    struct sqlResult *sr = sqlGetResult(conn, query);
-    char **row;
-
-    while ((row = sqlNextRow(sr)) != NULL)
-        {
-        safef(ensVersionString, sizeof(ensVersionString), "Ensembl %s",
-                row[0]);
-        safef(ensDateReference, sizeof(ensDateReference), "%s",
-                row[1]);
-        }
-    sqlFreeResult(&sr);
-    hFreeConn(&conn);
-    }
+ensGeneTrackVersion(database, ensVersionString, ensDateReference,
+    sizeof(ensVersionString));
 
 if (!psOutput)
     {
     if (differentWord(database,"susScr2"))
         {
         /* Print Ensembl anchor for latest assembly of organisms we have
         * supported by Ensembl == if versionString from trackVersion exists */
         if (sameWord(database,"hg19"))
             {
             hPrintf("<TD ALIGN=CENTER>&nbsp;&nbsp;");
             printEnsemblAnchor(database, NULL, chromName, winStart, winEnd);
             hPrintf("%s</A>&nbsp;&nbsp;</TD>", "Ensembl");
             }
         else if (sameWord(database,"hg18"))
             {