662c142fd7755be0eadbdfa5391b9548bc7f4ccd tdreszer Mon Aug 23 16:32:11 2010 -0700 Got popup box for descrition in findTracks working properly diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index d362a6a..381947e 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -2450,21 +2450,23 @@ } if(ajax && cartOptionalString(cart, "descriptionOnly")) { - //printf("<table><tr valign='top'><td>"); - char * html = tdb->html; - struct trackDb *thisTdb = tdb; - // FIXME: children need to get their parents filled in before this works! - while(html == NULL && html[0] != 0 && thisTdb->parent != NULL) + //struct trackDb *tdbParent = tdbFillInAncestry(cartString(cart, "db"),tdb); + if (tdb->html != NULL && tdb->html[0] != 0) + puts(tdb->html); + else { - thisTdb = thisTdb->parent; - html = thisTdb->html; + struct trackDb *tdbParent = tdb->parent; + for (;tdbParent && (tdbParent->html == NULL || tdbParent->html[0] == 0); tdbParent = tdbParent->parent ) + ; // Get the first parent that has html + if (tdbParent != NULL && tdbParent->html != NULL && tdbParent->html[0]) + { + printf("<h2 style='color:%s'>Retrieved from %s Track...</h2>\n",COLOR_DARKGREEN,tdbParent->shortLabel); + puts(tdbParent->html); } - if (html != NULL && html[0] != 0) - puts(html); else - puts("<h2>No description found.</h2>"); - //printf("</td></table>"); - cartRemove(cart,"descriptionOnly"); + printf("<h2>No description found for: %s.</h2>",tdbParent?tdbParent->track:tdb->track); + } + cartRemove(cart,"descriptionOnly"); // This is a once only request and should be deleted return; }