c20579fc7c537c1736650125c5d264357d2cfa78 angie Mon Sep 18 13:15:16 2017 -0700 Big search & replace: use https instead of http for NCBI URLs. refs #17793 diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c index 53642dd..01eeef5 100644 --- src/hg/hgc/hgc.c +++ src/hg/hgc/hgc.c @@ -275,56 +275,56 @@ void printLines(FILE *f, char *s, int lineSize); char mousedb[] = "mm3"; #define NUMTRACKS 9 int prevColor[NUMTRACKS]; /* used to optimize color change html commands */ int currentColor[NUMTRACKS]; /* used to optimize color change html commands */ int maxShade = 9; /* Highest shade in a color gradient. */ Color shadesOfGray[10+1]; /* 10 shades of gray from white to black */ Color shadesOfRed[16]; boolean exprBedColorsMade = FALSE; /* Have the shades of red been made? */ int maxRGBShade = 16; struct bed *sageExpList = NULL; -char ncbiOmimUrl[255] = {"http://www.ncbi.nlm.nih.gov/omim/"}; +char ncbiOmimUrl[255] = {"https://www.ncbi.nlm.nih.gov/omim/"}; struct palInfo { char *chrom; int left; int right; char *rnaName; }; /* See this NCBI web doc for more info about entrezFormat: - * http://www.ncbi.nlm.nih.gov/entrez/query/static/linking.html */ -char *entrezFormat = "http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Search&db=%s&term=%s&doptcmdl=%s&tool=genome.ucsc.edu"; -char *entrezPureSearchFormat = "http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=PureSearch&db=%s&details_term=%s[%s] "; -char *ncbiGeneFormat = "http://www.ncbi.nlm.nih.gov/gene/%s"; -char *entrezUidFormat = "http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=%s&list_uids=%d&dopt=%s&tool=genome.ucsc.edu"; + * https://www.ncbi.nlm.nih.gov/entrez/query/static/linking.html */ +char *entrezFormat = "https://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Search&db=%s&term=%s&doptcmdl=%s&tool=genome.ucsc.edu"; +char *entrezPureSearchFormat = "https://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=PureSearch&db=%s&details_term=%s[%s] "; +char *ncbiGeneFormat = "https://www.ncbi.nlm.nih.gov/gene/%s"; +char *entrezUidFormat = "https://www.ncbi.nlm.nih.gov/entrez/query.fcgi?cmd=Retrieve&db=%s&list_uids=%d&dopt=%s&tool=genome.ucsc.edu"; /* db=unists is not mentioned in NCBI's doc... so stick with this usage: */ -char *unistsnameScript = "http://www.ncbi.nlm.nih.gov:80/entrez/query.fcgi?db=unists"; -char *unistsScript = "http://www.ncbi.nlm.nih.gov/genome/sts/sts.cgi?uid="; +char *unistsnameScript = "https://www.ncbi.nlm.nih.gov:80/entrez/query.fcgi?db=unists"; +char *unistsScript = "https://www.ncbi.nlm.nih.gov/genome/sts/sts.cgi?uid="; char *gdbScript = "http://www.gdb.org/gdb-bin/genera/accno?accessionNum="; -char *cloneDbScript = "http://www.ncbi.nlm.nih.gov/clone?term="; -char *traceScript = "http://www.ncbi.nlm.nih.gov/Traces/trace.cgi?cmd=retrieve&val="; +char *cloneDbScript = "https://www.ncbi.nlm.nih.gov/clone?term="; +char *traceScript = "https://www.ncbi.nlm.nih.gov/Traces/trace.cgi?cmd=retrieve&val="; char *genMapDbScript = "http://genomics.med.upenn.edu/perl/genmapdb/byclonesearch.pl?clone="; char *uniprotFormat = "http://www.uniprot.org/uniprot/%s"; -char *dbSnpFormat = "http://www.ncbi.nlm.nih.gov/SNP/snp_ref.cgi?type=rs&rs=%s"; -char *clinVarFormat = "http://www.ncbi.nlm.nih.gov/clinvar/?term=%s[clv_acc]"; +char *dbSnpFormat = "https://www.ncbi.nlm.nih.gov/SNP/snp_ref.cgi?type=rs&rs=%s"; +char *clinVarFormat = "https://www.ncbi.nlm.nih.gov/clinvar/?term=%s[clv_acc]"; /* variables for gv tables */ char *gvPrevCat = NULL; char *gvPrevType = NULL; /* initialized by getCtList() if necessary: */ struct customTrack *theCtList = NULL; /* getDNA stuff actually works when the database doesn't exist! */ boolean dbIsFound = FALSE; /* forwards */ char *getPredMRnaProtSeq(struct genePred *gp); void doAltGraphXDetails(struct trackDb *tdb, char *item); @@ -422,31 +422,31 @@ static void printSwissProtVariationUrl(FILE *f, char *accession) /* Print URL for Swiss-Prot variation data on a protein. */ { if (accession != NULL) { fprintf(f, "\"http://www.expasy.org/cgi-bin/get-sprot-variant.pl?%s\"", accession); } } static void printOmimUrl(FILE *f, char *term) /* Print URL for OMIM data on a protein. */ { if (term != NULL) { - fprintf(f, "\"http://www.ncbi.nlm.nih.gov/omim/%s\"", term); + fprintf(f, "\"https://www.ncbi.nlm.nih.gov/omim/%s\"", term); } } static void printEntrezUniSTSUrl(FILE *f, char *name) /* Print URL for Entrez browser on a STS name. */ { fprintf(f, "\"%s&term=%s\"", unistsnameScript, name); } static void printUnistsUrl(FILE *f, int id) /* Print URL for UniSTS record for an id. */ { fprintf(f, "\"%s%d\"", unistsScript, id); } @@ -4412,31 +4412,31 @@ if (grp != NULL && grp[0] != 0) { dyStringPrintf(url, "&hgta_group=%s", grp); dyStringPrintf(url, "&hgta_track=%s", track); dyStringPrintf(url, "&hgta_table=%s", track); } } } return dyStringCannibalize(&url); } char *traceUrl(char *traceId) /* Make up URL for trace archive. */ { struct dyString *url = dyStringNew(0); -dyStringAppend(url, "http://www.ncbi.nlm.nih.gov/Traces/trace.cgi?"); +dyStringAppend(url, "https://www.ncbi.nlm.nih.gov/Traces/trace.cgi?"); dyStringPrintf(url, "cmd=retrieve&size=1&val=%s&", traceId); dyStringAppend(url, "file=trace&dopt=trace"); return dyStringCannibalize(&url); } void doGetDna1() /* Do first get DNA dialog. */ { struct hTableInfo *hti = NULL; char *tbl = cgiUsualString("table", ""); if (dbIsFound && tbl[0] != 0) { char rootName[256]; char parsedChrom[32]; hParseTableName(database, tbl, rootName, parsedChrom); @@ -4822,31 +4822,31 @@ "Places where the Genes and InterPro Domains overlap will be painted yellow " "(255,255,0).\n" "
  • To get a level-of-coverage effect for tracks like Genes with " "multiple overlapping items, initially select a darker color such as deep " "green, RGB (0,64,0). Nucleotides covered by a single Gene will appear dark " "green, while regions covered with more Genes get progressively brighter — " "saturating at 4 Genes." "
  • Another track can be used to mask unwanted features. Setting the " "InterPro track to RGB (255,255,255) will white-out Genes within InterPro " "domains. " ""); puts("

    Further Details and Ideas

    "); puts("

    Copying and pasting the web page output to a text editor such as Word " "will retain upper case but lose colors and other formatting. That is still " "useful because other web tools such as " - "NCBI Blast " + "NCBI Blast " "can be set to ignore lower case. To fully capture formatting such as color " "and underlining, view the output as \"source\" in your web browser, or download " "it, or copy the output page into an html editor.

    "); puts("

    The default line width of 60 characters is standard, but if you have " "a reasonable sized monitor it's useful to set this higher - to 125 characters " "or more. You can see more DNA at once this way, and fewer line breaks help " "in finding DNA strings using the web browser search function.

    "); } else { printf("

    Coloring Information and Examples

    \n"); puts("The color values range from 0 (darkest) to 255 (lightest) and are additive.\n"); puts("The examples below show a few ways to highlight individual tracks, " "and their interplay. It's good to keep it simple at first. It's easy " "to make pretty, but completely cryptic, displays with this feature."); @@ -4862,31 +4862,31 @@ "(255,255,0).\n" "
  • To get a level-of-coverage effect for tracks like Spliced Ests with " "multiple overlapping items, initially select a darker color such as deep " "green, RGB (0,64,0). Nucleotides covered by a single EST will appear dark " "green, while regions covered with more ESTs get progressively brighter — " "saturating at 4 ESTs." "
  • Another track can be used to mask unwanted features. Setting the " "RepeatMasker track to RGB (255,255,255) will white-out Genscan predictions " "of LINEs but not mainstream host genes; masking with RefSeq Genes will show " "what is new in the gene prediction sector." ""); puts("

    Further Details and Ideas

    "); puts("

    Copying and pasting the web page output to a text editor such as Word " "will retain upper case but lose colors and other formatting. That is still " "useful because other web tools such as " - "NCBI Blast " + "NCBI Blast " "can be set to ignore lower case. To fully capture formatting such as color " "and underlining, view the output as \"source\" in your web browser, or download " "it, or copy the output page into an html editor.

    "); puts("

    The default line width of 60 characters is standard, but if you have " "a reasonable sized monitor it's useful to set this higher - to 125 characters " "or more. You can see more DNA at once this way, and fewer line breaks help " "in finding DNA strings using the web browser search function.

    "); puts("

    Be careful about requesting complex formatting for a very large " "chromosomal region. After all the html tags are added to the output page, " "the file size may exceed size limits that your browser, clipboard, and " "other software can safely display. The tool will format 10 Mb and more, however.

    "); } trackDbFreeList(&tdbList); } @@ -5815,31 +5815,31 @@ printEntrezEstUrl(stdout, acc); else printEntrezNucleotideUrl(stdout, acc); printf("\" TARGET=_blank>%s\n", acc); printf("Description: %s
    \n", description); if (gbWarn != NULL) printGbWarn(acc, gbWarn); medlineLinkedLine("Gene", geneName, geneName); medlineProductLinkedLine("Product", productName); dyStringClear(dy); gbToEntrezAuthor(author, dy); medlineLinkedLine("Author", author, dy->string); printf("Organism: "); - printf("", + printf("", cgiEncode(orgFullName)); printf("%s
    \n", orgFullName); printf("Tissue: %s
    \n", tissue); printf("Development stage: %s
    \n", development); printf("Cell line: %s
    \n", cell); printf("Sex: %s
    \n", sex); printf("Library: %s
    \n", library); printf("Clone: %s
    \n", clone); if (isEst) { printf("Read direction: "); if (direction[0] != '0') printf("%s' (guessed from GenBank description)
    \n", direction); else printf("unknown (can't guess from GenBank description)
    "); @@ -6649,31 +6649,31 @@ char *accession1, *accession2, *spanner, *variation, *varEvidence, *contact, *remark, *comment; // char *evaluation; unused variable char *secondAcc, *secondAccVer; char *tmpString; int first; cartWebStart(cart, database, "%s", fragName); hFindSplitTable(database, seqName, tdb->table, splitTable, &hasBin); sqlSafef(query, sizeof query, "select * from %s where frag = '%s' and chromStart = %d", splitTable, fragName, start); sr = sqlMustGetResult(conn, query); row = sqlNextRow(sr); agpFragStaticLoad(row+hasBin, &frag); -printf("Entrez nucleotide: %s
    \n", fragName, fragName); +printf("Entrez nucleotide: %s
    \n", fragName, fragName); printf("Clone Fragment ID: %s
    \n", frag.frag); printf("Clone Fragment Type: %s
    \n", frag.type); printf("Clone Bases: %d-%d
    \n", frag.fragStart+1, frag.fragEnd); if (hTableExists(database, "contigAcc")) { sqlSafef(query2, sizeof query2, "select * from contigAcc where contig = '%s'", frag.frag); if ((sr2 = sqlGetResult(conn2, query2))) { row = sqlNextRow(sr2); if (row) { contigAccStaticLoad(row, &contigAcc); printf("Genbank Accession: ", "http://www.hugenavigator.net/HuGENavigator/searchSummary.do?firstQuery=", itemName, "&publitSearchType=now&whichContinue=firststart&check=n&dbType=publit&Mysubmit=go"); printf("%s\n", itemName); sqlSafef(query, sizeof(query), "select distinct g.omimId, o.title from gadAll g, hgFixed.omimTitle o where g.geneSymbol='%s' and g.omimId <>'.' and g.omimId=o.omimId", itemName); sr = sqlMustGetResult(conn, query); row = sqlNextRow(sr); if (row != NULL) printf("
    OMIM: "); while (row != NULL) { printf("", - "http://www.ncbi.nlm.nih.gov/omim/", row[0]); + "https://www.ncbi.nlm.nih.gov/omim/", row[0]); printf("%s %s\n", row[0], row[1]); row = sqlNextRow(sr); } sqlFreeResult(&sr); /* List disease classes associated with the gene */ sqlSafef(query, sizeof(query), "select distinct diseaseClass from gadAll where geneSymbol='%s' and association = 'Y' order by diseaseClass", itemName); sr = sqlMustGetResult(conn, query); row = sqlNextRow(sr); if (row != NULL) { diseaseClass = row[0]; @@ -11167,31 +11167,31 @@ printf("   Status: %s", row[0]); } sqlFreeResult(&sr); } puts("
    "); if (rl->omimId != 0) { printf("OMIM: omimId); printf("\" TARGET=_blank>%d
    \n", rl->omimId); } if (rl->locusLinkId != 0) { printf("Entrez Gene: "); - printf("", + printf("", rl->locusLinkId); printf("%d
    \n", rl->locusLinkId); } htmlHorizontalLine(); /* print alignments that track was based on */ { char *aliTbl = (sameString(tdb->table, "rgdGene") ? "refSeqAli" : "xenoRGDAli"); struct psl *pslList = getAlignments(conn, aliTbl, rl->mrnaAcc); printf("

    mRNA/Genomic Alignments

    "); printAlignments(pslList, start, "htcCdnaAli", aliTbl, rl->mrnaAcc); } htmlHorizontalLine(); @@ -11519,31 +11519,31 @@ cdsCmpl = getRefSeqCdsCompleteness(conn, sqlRnaName); if (cdsCmpl != NULL) { printf("CDS: %s
    ", cdsCmpl); } if (rl->omimId != 0) { printf("OMIM: omimId); printf("\" TARGET=_blank>%d
    \n", rl->omimId); } if (rl->locusLinkId != 0) { printf("Entrez Gene: "); - printf("", + printf("", rl->locusLinkId); printf("%d
    \n", rl->locusLinkId); if ( (strstr(database, "mm") != NULL) && hTableExists(database, "MGIid")) { char *mgiID; sqlSafef(query, sizeof(query), "select MGIid from MGIid where LLid = '%d';", rl->locusLinkId); sr = sqlGetResult(conn, query); if ((row = sqlNextRow(sr)) != NULL) { printf("Mouse Genome Informatics: "); mgiID = cloneString(row[0]); @@ -11602,31 +11602,31 @@ sqlSafef(query, sizeof(query), "select * from jaxOrtholog where humanSymbol='%s'", sqlRlName); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { jaxOrthologStaticLoad(row, &jo); printf("MGI Mouse Ortholog: "); printf("", jo.mgiId); printf("%s
    \n", jo.mouseSymbol); } sqlFreeResult(&sr); } if (startsWith("hg", database)) { printf("\n"); printf("AceView: "); - printf("", + printf("", rl->name); printf("%s
    \n", rl->name); } prGRShortRefGene(rl->name); } void prKnownGeneInfo(struct sqlConnection *conn, char *rnaName, char *sqlRnaName, struct refLink *rl) /* print basic details information and links for a Known Gene */ { struct sqlResult *sr; char **row; char query[256]; int ver = gbCdnaGetVersion(conn, rl->mrnaAcc); @@ -11656,31 +11656,31 @@ cdsCmpl = getRefSeqCdsCompleteness(conn, sqlRnaName); if (cdsCmpl != NULL) { printf("CDS: %s
    ", cdsCmpl); } if (rl->omimId != 0) { printf("OMIM: omimId); printf("\" TARGET=_blank>%d
    \n", rl->omimId); } if (rl->locusLinkId != 0) { printf("Entrez Gene: "); - printf("", + printf("", rl->locusLinkId); printf("%d
    \n", rl->locusLinkId); if ( (strstr(database, "mm") != NULL) && hTableExists(database, "MGIid")) { char *mgiID; sqlSafef(query, sizeof(query), "select MGIid from MGIid where LLid = '%d';", rl->locusLinkId); sr = sqlGetResult(conn, query); if ((row = sqlNextRow(sr)) != NULL) { printf("Mouse Genome Informatics: "); mgiID = cloneString(row[0]); @@ -11907,67 +11907,67 @@ printf("ncRNA class: %s
    \n", nrl->ncrna_class); } if (differentWord(nrl->note, "")) { printf("Other notes: %s
    \n", nrl->note); } if (differentWord(nrl->omimId, "")) { printf("OMIM: %s
    \n", nrl->omimId); } if (differentWord(nrl->mrnaAcc, "") && differentWord(nrl->mrnaAcc,nrl->id)) { printf("mRNA: "); - printf("", nrl->mrnaAcc); + printf("", nrl->mrnaAcc); printf("%s
    \n", nrl->mrnaAcc); } if (differentWord(nrl->genbank, "") && differentWord(nrl->genbank,nrl->id)) { printf("Genbank: "); - printf("", nrl->genbank); + printf("", nrl->genbank); printf("%s
    \n", nrl->genbank); } if (differentWord(nrl->protAcc, "")) { printf("Protein: "); - printf("", nrl->protAcc); + printf("", nrl->protAcc); printf("%s
    \n", nrl->protAcc); } if (differentWord(nrl->hgnc, "")) { printf("HGNC: "); printf("", nrl->hgnc); printf("%s
    \n", nrl->hgnc); } if (differentWord(nrl->locusLinkId, "")) { printf("Entrez Gene: "); - printf("", + printf("", nrl->locusLinkId); printf("%s
    \n", nrl->locusLinkId); } if (differentWord(nrl->name,"")) { printGeneCards(nrl->name); if (startsWith("hg", database)) { printf("AceView: "); - printf("", + printf("", nrl->name); printf("%s
    \n", nrl->name); } } if ((trackVersion != NULL) && !isEmpty(trackVersion->version)) { printf("Annotation Release: %s
    ", trackVersion->comment, trackVersion->version); } htmlHorizontalLine(); if (differentWord("", nrl->description)) { printf("Summary of %s
    \n%s
    \n", nrl->name, nrl->description); htmlHorizontalLine(); } @@ -13633,31 +13633,31 @@ char *tiNum = strrchr(itemName, '|'); boolean hasBin; char table[64]; /* Print heading info including link to NCBI. */ if (tiNum != NULL) ++tiNum; cartWebStart(cart, database, "%s", itemName); printf("

    Information on Mouse %s %s

    ", (tiNum == NULL ? "Contig" : "Read"), itemName); /* Print links to NCBI and to sequence. */ if (tiNum != NULL) { printf("Link to "); - printf("", tiNum); + printf("", tiNum); printf("NCBI Trace Repository for %s\n
    \n", itemName); } printf("Get "); printf("", hgcPathAndSettings(), seqName, winStart, winEnd, itemName); printf("Mouse DNA
    \n"); /* Print info about mate pair. */ if (tiNum != NULL && sqlTableExists(conn, "mouseTraceInfo")) { char buf[256]; char *templateId; boolean gotMate = FALSE; sqlSafef(query, sizeof query, "select templateId from mouseTraceInfo where ti = '%s'", itemName); templateId = sqlQuickQuery(conn, query, buf, sizeof(buf)); @@ -14922,31 +14922,31 @@ sr = sqlMustGetResult(conn, query); row = sqlNextRow(sr); if (row != NULL) { infoRow = stsInfoMouseNewLoad(row); printf("\n"); printf("\n", seqName); printf("\n",start+1); printf("\n",end); printf("
    Chromosome:%s
    Start:%d
    End:%d
    \n"); htmlHorizontalLine(); printf("\n"); printf("\n", infoRow->identNo); if (infoRow->UiStsId != 0) printf("\n", infoRow->UiStsId, infoRow->UiStsId); if (infoRow->MGIId != 0) printf("\n", sChar,infoRow->MGIId,infoRow->MGIId ); if (strcmp(infoRow->MGIName, "")) printf("\n", infoRow->MGIName); printf("
    UCSC STS Marker ID:%d
    UniSts Marker ID:" - "%d
    MGI Marker ID:" "%d
    MGI Marker Name:%s
    \n"); htmlHorizontalLine(); /* Print out primer information */ printf("\n"); printf("\n",infoRow->primer1); printf("\n",infoRow->primer2); printf("\n",infoRow->distance); @@ -15104,31 +15104,31 @@ sr = sqlMustGetResult(conn, query); row = sqlNextRow(sr); if (row != NULL) { infoRow = stsInfoRatLoad(row); printf("
    Left Primer:%s
    Right Primer:%s
    Distance:%s bps
    \n"); printf("\n", seqName); printf("\n",start+1); printf("\n",end); printf("
    Chromosome:%s
    Start:%d
    End:%d
    \n"); htmlHorizontalLine(); printf("\n"); printf("\n", infoRow->identNo); if (infoRow->UiStsId != 0) printf("\n", infoRow->UiStsId, infoRow->UiStsId); if (infoRow->RGDId != 0) printf("\n", infoRow->RGDId,infoRow->RGDId ); if (strcmp(infoRow->RGDName, "")) printf("\n", infoRow->RGDName); printf("
    UCSC STS Marker ID:%d
    UniSts Marker ID:" - "%d
    RGD Marker ID:" "%d
    RGD Marker Name:%s
    \n"); htmlHorizontalLine(); /* Print out primer information */ printf("\n"); printf("\n",infoRow->primer1); printf("\n",infoRow->primer2); printf("\n",infoRow->distance); printf("
    Left Primer:%s
    Right Primer:%s
    Distance:%s bps
    \n"); @@ -15804,49 +15804,49 @@ sqlSafef(query, sizeof(query), "select * " "from dbSnpRs%s " "where rsId = '%s'", dbOrg, name); else sqlSafef(query, sizeof(query), "select * " "from dbSnpRs%s " "where rsId = '%s'", dbOrg, rsId); snp = dbSnpRsLoadByQuery(hgFixed, query); if (snp != NULL) { printf("
    \n"); if(snp->avHetSE>0) { - printf(""); + printf(""); printf("Average Heterozygosity: %f
    \n",snp->avHet); - printf(""); + printf(""); printf("Standard Error of Avg. Het.: %f
    \n", snp->avHetSE); } else { - printf(""); + printf(""); printf("Average Heterozygosity: Not Known
    \n"); - printf(""); + printf(""); printf("Standard Error of Avg. Het.: Not Known
    \n"); } -// printf(""); // printf("Functional Status: %s
    \n", // snp->func); printf("Functional Status: %s
    \n", snp->func); - printf(""); printf("Validation Status: %s
    \n", snp->valid); // printf("Validation Status: %s
    \n", // snp->valid); printf("Allele1: %s
    \n", snp->allele1); printf("Allele2: %s
    \n", snp->allele2); printf("Sequence in Assembly: %s
    \n", snp->assembly); printf("Alternate Sequence:   %s
    \n", snp->alternate); } dbSnpRsFree(&snp); } sqlDisconnect(&hgFixed); @@ -15883,31 +15883,31 @@ " rl.locusLinkID, " " rl.name " "from knownGene kg, " " %s rl, " " %s snp, " " mrnaRefseq mrs " "where snp.chrom = kg.chrom " " and kg.name = mrs.mrna " " and mrs.refSeq = rl.mrnaAcc " " and kg.txStart < snp.chromStart " " and kg.txEnd > snp.chromEnd " " and snp.name = '%s'",refLinkTable, table, name); sr = sqlGetResult(conn, query); while ((row = sqlNextRow(sr)) != NULL) { - printf("
    Entrez Gene for ", row[0]); printf("%s
    \n", row[1]); } sqlFreeResult(&sr); } hFreeConn(&conn); } void doSnpOld(struct trackDb *tdb, char *itemName) /* Put up info on a SNP. */ { char *snpTable = tdb->table; struct snp snp; struct snpMap snpMap; int start = cartInt(cart, "o"); @@ -17956,31 +17956,31 @@ highlightCodonBase(anno->codons[i], anno->frame)); } } sqlFreeResult(&sr); } hFreeConn(&conn); } void printSnp132ExtraColumns(struct trackDb *tdb, struct snp132Ext *snp) /* Print columns new in snp132 */ { // Skip exceptions column; handled below in writeSnpExceptionWithVersion printf("Submitter Handles  "); int i; for (i=0; i < snp->submitterCount; i++) - printf("%s" + printf("%s" "%s", (i > 0 ? ", " : ""), snp->submitters[i], snp->submitters[i]); printf("\n"); if (snp->alleleFreqCount > 0) { boolean gotNonIntN = FALSE; double total2NDbl = 0.0; for (i = 0; i < snp->alleleFreqCount; i++) total2NDbl += snp->alleleNs[i]; int total2N = round(total2NDbl); printf("Allele Frequencies  "); for (i = 0; i < snp->alleleFreqCount; i++) { printf("%s%s: %.3f%% ", (i > 0 ? "; " : ""), snp->alleles[i], (snp->alleleFreqs[i]*100.0)); // alleleNs should be integers (counts of chromosomes in which allele was observed) // but dbSNP extrapolates them from reported frequency and reported sample count, @@ -19292,31 +19292,31 @@ int start = cartInt(cart, "o"); struct gbProtAnn *gbProtAnn; genericHeader(tdb, item); sqlSafef(query, sizeof query, "select * from gbProtAnn where name = '%s' and chrom = '%s' and chromStart = %d", item, seqName, start); sr = sqlGetResult(conn, query); if ((row = sqlNextRow(sr)) != NULL) { gbProtAnn = gbProtAnnLoad(row); printCustomUrl(tdb, item, TRUE); printf("Product: %s
    \n", gbProtAnn->product); if (gbProtAnn->note[0] != 0) printf("Note: %s
    \n", gbProtAnn->note); printf("GenBank Protein: "); - printf("proteinId); printf(" TARGET=_blank>%s
    \n", gbProtAnn->proteinId); htmlHorizontalLine(); showSAM_T02(gbProtAnn->proteinId); printPos(seqName, gbProtAnn->chromStart, gbProtAnn->chromEnd, "+", TRUE, gbProtAnn->name); } printTrackHtml(tdb); sqlFreeResult(&sr); hFreeConn(&conn); } @@ -20503,31 +20503,31 @@ } featureCount= slCount(sgList); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n"); printf("\n",featureCount); printf("\n\n"); for(sg = sgList; sg != NULL; sg = sg->next) { char buff[32]; char url[256]; safef(buff, sizeof buff, "Hs.%d", sg->uni); printf(""); } printf("\n"); /* for each experiment write out the name and then all of the values */ for(se=seList;se!=NULL;se=se->next) { char *tmp; tmp = strstr(se->exp,"_"); if(++count%2) printf("\n"); else printf("\n"); printf("\n", tmp ? (tmp+1) : se->exp);
    Sage ExperimentTissueUni-Gene Clusters
    (Median [Ave ± Stdev])
      \n"); - safef(url, sizeof url, "http://www.ncbi.nlm.nih.gov/SAGE/SAGEcid.cgi?cid=%d&org=Hs",sg->uni); + safef(url, sizeof url, "https://www.ncbi.nlm.nih.gov/SAGE/SAGEcid.cgi?cid=%d&org=Hs",sg->uni); printTableHeaderName(buff, itemName, url); printf("
    "); printf("%s