f8cbb9d40119d1b7fd52578e08c4148e39e10ce4 max Tue May 16 17:19:56 2017 -0700 removing external tools link when on alternate chromosomes, e.g. on hg38, refs #16619 diff --git src/hg/hgTracks/extTools.c src/hg/hgTracks/extTools.c index 84a5288..2e37162 100644 --- src/hg/hgTracks/extTools.c +++ src/hg/hgTracks/extTools.c @@ -14,41 +14,45 @@ #include "hash.h" #include "web.h" #include "ra.h" #include "hgTracks.h" #include "extTools.h" #include "hgFind.h" #include "obscure.h" #include "net.h" boolean extToolsEnabled() /* Return TRUE if we can display the external tools menu. */ { return fileExists("extTools.ra"); } -void printExtMenuData() +void printExtMenuData(char *chromName) /* print the external tools aka "send to" menu entries as a javascript list to stdout */ { if (!extToolsEnabled()) return; struct extTool *extTools = readExtToolRa("extTools.ra"); struct extTool *et; struct dyString *dy = dyStringNew(1024); dyStringAppend(dy, "extTools = [\n"); for(et = extTools; et != NULL; et = et->next) { + // special case for alternate chroms on hg38, skip the Ensembl links + if (chromName!=NULL && startsWith("ensembl", et->tool) && endsWith(chromName, "_alt")) + continue; + if (et->dbs!=NULL) { if (!slNameInList(et->dbs, database)) continue; } if (et->notDbs!=NULL) { if (slNameInList(et->notDbs, database)) continue; } char* tool = jsonStringEscape(et->tool); char* shortLabel = jsonStringEscape(et->shortLabel); char* longLabel = jsonStringEscape(et->longLabel); dyStringPrintf(dy, " ['%s', '%s', '%s', %d]", tool, shortLabel, longLabel, et->maxSize); if (et->next)