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];