9716ae4bc04dbfbcb526f497f62d6ecab62516ee angie Wed Apr 24 10:40:00 2019 -0700 For altSeqLiftOverPsl, don't show the 'view alt in context' or 'view corresponding range on alt' unless the alt is already in database. hg19 on beta/RR does not have patch updates, but does have altSeqLiftOverPsl and those links were broken. refs #18854 note-53 diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c index 5700c2e..464d6ee 100644 --- src/hg/hgc/hgc.c +++ src/hg/hgc/hgc.c @@ -8985,40 +8985,44 @@ char *chrom = cartString(cart, "c"); int start = cartInt(cart, "o"); struct sqlConnection *conn = hAllocConn(database); genericHeader(tdb, item); printCustomUrl(tdb, item, TRUE); puts("

"); struct psl *pslList = getAlignmentsTName(conn, tdb->table, item, chrom); if (pslList) { printf("Alignment of %s to %s:
\n", item, pslList->tName); printAlignments(pslList, start, "htcCdnaAli", tdb->table, item); char *hgsid = cartSessionId(cart); + if (hgIsOfficialChromName(database, item)) + { int rangeStart = 0, rangeEnd = 0; if (pslTrimListToTargetRange(pslList, winStart, winEnd, &rangeStart, &rangeEnd)) { printf("" "View corresponding position range on %s
\n", hgsid, item, rangeStart+1, rangeEnd, item); } + } char *altFix = item; if (!endsWith(altFix, "alt") && !endsWith(altFix, "fix")) altFix = pslList->tName; + if (hgIsOfficialChromName(database, altFix)) printf("" "Show %s placed on its chromosome
\n", hgsid, altFix, altFix); puts("

Alignment stats:
"); // Sometimes inversions cause alignments to be split up; just sum up all the stats. int totalBlocks = 0, totalSize = 0, totalMatch = 0, totalMismatch = 0, totalN = 0; int totalTIns = 0, totalQIns = 0; struct psl *psl; for (psl = pslList; psl != NULL; psl = psl->next) { totalBlocks += psl->blockCount; int i; for (i=0; i < psl->blockCount; i++) totalSize += psl->blockSizes[i];