9440548e67d816a02d14939e7114ab57a12f6965
braney
  Sat Apr 12 15:35:48 2014 -0700
first cut at writing out search terms from public hubs #11633
diff --git src/hg/lib/hubConnect.c src/hg/lib/hubConnect.c
index 930ef24..aa9cd1f 100644
--- src/hg/lib/hubConnect.c
+++ src/hg/lib/hubConnect.c
@@ -310,72 +310,40 @@
     {
     /* save away the next pointer becuase we may detach this node and
      * add it to its supertrack parent */
     next = tdb->next;
     if (tdb->parent != NULL && sameString(trackName, tdb->parent->track))
 	{
 	/* found a supertrack with the right name, add this child */
 	p = tdb->parent;
 	slAddHead(&p->subtracks, tdb);
 	}
     }
 
 return p;
 }
 
-static void addOneDescription(char *trackDbFile, struct trackDb *tdb)
-/* Fetch tdb->track's html description and store in tdb->html. */
-{
-/* html setting should always be set because we set it at load time */
-char *htmlName = trackDbSetting(tdb, "html");
-if (htmlName == NULL)
-    return;
-
-char *simpleName = hubConnectSkipHubPrefix(htmlName);
-char *url = trackHubRelativeUrl(trackDbFile, simpleName);
-char buffer[10*1024];
-safef(buffer, sizeof buffer, "%s.html", url);
-tdb->html = netReadTextFileIfExists(buffer);
-freez(&url);
-}
-
-static void addDescription(char *trackDbFile, struct trackDb *tdb)
-/* Fetch tdb->track's html description (or nearest ancestor's non-empty description)
- * and store in tdb->html. */
-{
-addOneDescription(trackDbFile, tdb);
-if (isEmpty(tdb->html))
-    {
-    struct trackDb *parent;
-    for (parent = tdb->parent;  isEmpty(tdb->html) && parent != NULL;  parent = parent->parent)
-	{
-	addOneDescription(trackDbFile, parent);
-	if (isNotEmpty(parent->html))
-	    tdb->html = cloneString(parent->html);
-	}
-    }
-}
 
 void hubConnectAddDescription(char *database, struct trackDb *tdb)
 /* Fetch tdb->track's html description (or nearest ancestor's non-empty description)
  * and store in tdb->html. */
 {
 unsigned hubId = hubIdFromTrackName(tdb->track);
 struct trackHub *hub = trackHubFromId(hubId);
 struct trackHubGenome *hubGenome = trackHubFindGenome(hub, database);
 trackHubPolishTrackNames(hub, tdb);
-addDescription(hubGenome->trackDbFile, tdb);
+trackHubAddDescription(hubGenome->trackDbFile, tdb);
 }
 
 struct trackDb *hubConnectAddHubForTrackAndFindTdb( char *database, 
     char *trackName, struct trackDb **pTdbList, struct hash *trackHash)
 /* Go find hub for trackName (which will begin with hub_), and load the tracks
  * for it, appending to end of list and adding to trackHash.  Return the
  * trackDb associated with trackName. This will also fill in the html fields,
  * but just for that track and it's parents. */ 
 {
 unsigned hubId = hubIdFromTrackName(trackName);
 struct trackHub *hub = trackHubFromId(hubId);
 struct trackHubGenome *hubGenome = trackHubFindGenome(hub, database);
 struct trackDb *tdbList = trackHubTracksForGenome(hub, hubGenome);
 tdbList = trackDbLinkUpGenerations(tdbList);
 tdbList = trackDbPolishAfterLinkup(tdbList, database);
@@ -385,31 +353,31 @@
 rAddTrackListToHash(trackHash, tdbList, NULL, FALSE);
 if (pTdbList != NULL)
     *pTdbList = slCat(*pTdbList, tdbList);
 struct trackDb *tdb = hashFindVal(trackHash, fixTrackName);
 if (tdb == NULL) 
     // superTracks aren't in the hash... look in tdbList
     tdb = findSuperTrack(tdbList, fixTrackName);
 
 if (tdb == NULL) 
     errAbort("Can't find track %s in %s", fixTrackName, hub->url);
 
 /* Add html for track and parents. */
 /* Note: this does NOT add the HTML for supertrack kids */
 struct trackDb *parent;
 for (parent = tdb; parent != NULL; parent = parent->parent)
-    addDescription(hubGenome->trackDbFile, parent);
+    trackHubAddDescription(hubGenome->trackDbFile, parent);
 trackHubClose(&hub);
 
 return tdb;
 }
 
 static char *getDbList(struct trackHub *tHub, int *pCount)
 /* calculate dbList for hubStatus table from trackHub */
 {
 struct hashEl *hel;
 struct dyString *dy = newDyString(1024);
 struct hashCookie cookie = hashFirst(tHub->genomeHash);
 int dbCount = 0;
 while ((hel = hashNext(&cookie)) != NULL)
     {
     dbCount++;