032ef09c0d89b90b4967379956b2f8d9446575b9
ceisenhart
  Thu May 11 11:05:18 2017 -0700
Cosmic tracks scripts, code changes and documentation, refs #14461 and #18919

diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c
index 4d7f9bb..6e5de89 100644
--- src/hg/hgc/hgc.c
+++ src/hg/hgc/hgc.c
@@ -9866,219 +9866,30 @@
 	printPosOnChrom(chrom, atoi(chromStart), atoi(chromEnd), NULL, FALSE, itemName);
         }
     sqlFreeResult(&sr);
     hFreeConn(&conn);
     }
 }
 
 void doGad(struct trackDb *tdb, char *item, char *itemForUrl)
 /* Put up GAD track info. */
 {
 genericHeader(tdb, item);
 printGadDetails(tdb, item, FALSE);
 printTrackHtml(tdb);
 }
 
-void printCosmicDetails(struct trackDb *tdb, char *itemName)
-/* Print details of a COSMIC entry. */
-{
-struct sqlConnection *conn  = hAllocConn(database);
-struct sqlConnection *conn2 = hAllocConn(database);
-char query[1024];
-char query2[1024];
-struct sqlResult *sr;
-struct sqlResult *sr2;
-char **row;
-char **row2;
-
-char *chp;
-char indent1[40] = {"    "};
-char indent2[40] = {""};
-
-char *gene_name, *accession_number;
-// char $source, *cosmic_mutation_id;  unused variable
-char *mut_description, *mut_syntax_cds, *mut_syntax_aa;
-char *chromosome, *grch37_start, *grch37_stop, *mut_nt;
-char *mut_aa, *tumour_site, *mutated_samples, *examined_samples, *mut_freq;
-char *url = tdb->url;
-
-char *chrom, *chromStart, *chromEnd;
-chrom      = cartOptionalString(cart, "c");
-chromStart = cartOptionalString(cart, "o");
-chromEnd   = cartOptionalString(cart, "t");
-
-sqlSafef(query, sizeof(query),
-      "select source,cosmic_mutation_id,gene_name,accession_number,mut_description,mut_syntax_cds,mut_syntax_aa,"
-      "chromosome,grch37_start,grch37_stop,mut_nt,mut_aa,tumour_site,mutated_samples,examined_samples,mut_freq"
-      " from cosmicRaw where cosmic_mutation_id='%s'",
-      itemName);
-
-sr = sqlMustGetResult(conn, query);
-row = sqlNextRow(sr);
-if (row != NULL)
-    {
-    int ii;
-    boolean multipleTumorSites;
-    char *indentString;
-
-    ii=0;
-
-    ii++; // source              = row[ii];ii++;  unused variable
-    ii++; // cosmic_mutation_id  = row[ii];ii++;  unused variable
-    gene_name           = row[ii];ii++;
-    accession_number    = row[ii];ii++;
-    mut_description     = row[ii];ii++;
-    mut_syntax_cds      = row[ii];ii++;
-    mut_syntax_aa       = row[ii];ii++;
-
-    chromosome          = row[ii];ii++;
-    grch37_start        = row[ii];ii++;
-    grch37_stop         = row[ii];ii++;
-    mut_nt              = row[ii];ii++;
-    mut_aa              = row[ii];ii++;
-    tumour_site         = row[ii];ii++;
-    mutated_samples     = row[ii];ii++;
-    examined_samples    = row[ii];ii++;
-    mut_freq            = row[ii];ii++;
-
-    // chromosome name adjustment
-    if (sameString(chromosome, "23"))
-	chromosome = "X";    
-    if (sameString(chromosome, "24"))
-	chromosome = "Y";    
-    if (sameString(chromosome, "25"))
-	chromosome = "M";    
-
-    chp = strstr(itemName, "COSM")+strlen("COSM");
-    printf("<B>COSMIC ID:</B> <A HREF=\"%s%s\" TARGET=_BLANK>%s</A> (details at COSMIC site)", url, chp, chp);
-
-    // Embed URL to COSMIC site per COSMICT request.
-    // printf("<BR><B>Source:</B> ");
-    // printf("<A HREF=\"http://cancer.sanger.ac.uk/cancergenome/projects/cosmic/\" TARGET=_BLANK>%s</A>\n", source);
-
-    printf("<BR><B>Gene Name:</B> %s\n", gene_name);
-    printf("<BR><B>Accession Number:</B> %s\n", accession_number);
-    printf("<BR><B>Genomic Position:</B> chr%s:%s-%s", chromosome, grch37_start, grch37_stop);
-    printf("<BR><B>Mutation Description:</B> %s\n", mut_description);
-    printf("<BR><B>Mutation Syntax CDS:</B> %s\n", mut_syntax_cds);
-    printf("<BR><B>Mutation Syntax AA:</B> %s\n", mut_syntax_aa);
-    printf("<BR><B>Mutation NT:</B> %s\n", mut_nt);
-    printf("<BR><B>Mutation AA:</B> %s\n", mut_aa);
-
-    sqlSafef(query2, sizeof(query2),
-      "select count(tumour_site) from cosmicRaw where cosmic_mutation_id='%s'", itemName);
-
-    sr2 = sqlMustGetResult(conn2, query2);
-    row2 = sqlNextRow(sr2);
-    if ((atoi(row2[0])) > 1)
-        {
-	multipleTumorSites = TRUE;
-        indentString = indent1;
-	}
-    else
-        {
-        multipleTumorSites = FALSE;
-        indentString = indent2;
-        }
-    sqlFreeResult(&sr2);
-
-    sqlSafef(query2, sizeof(query2),
-      "select tumour_site,mutated_samples,examined_samples,mut_freq "
-      " from cosmicRaw where cosmic_mutation_id='%s' order by tumour_site",
-      itemName);
-
-    sr2 = sqlMustGetResult(conn2, query2);
-    row2 = sqlNextRow(sr2);
-    while (row2 != NULL)
-        {
-        int ii;
-        ii=0;
-        tumour_site             = row2[ii];ii++;
-        mutated_samples         = row2[ii];ii++;
-        examined_samples        = row2[ii];ii++;
-        mut_freq                = row2[ii];ii++;
-
-        if (multipleTumorSites) printf("<BR>");
-        printf("<BR><B>%sTumor Site:</B> %s\n",         indentString, tumour_site);
-        printf("<BR><B>%sMutated Samples:</B> %s\n",    indentString, mutated_samples);
-        printf("<BR><B>%sExamined Samples:</B> %s\n",   indentString, examined_samples);
-        printf("<BR><B>%sMutation Frequency:</B> %s\n", indentString, mut_freq);
-        row2 = sqlNextRow(sr2);
-        }
-    sqlFreeResult(&sr2);
-
-    sqlSafef(query2, sizeof(query2),
-      "select sum(mutated_samples) from cosmicRaw where cosmic_mutation_id='%s'",
-      itemName);
-
-    sr2 = sqlMustGetResult(conn2, query2);
-    row2 = sqlNextRow(sr2);
-    if (row2 != NULL)
-        {
-        printf("<BR><BR><B>Total Mutated Samples:</B> %s\n", row2[0]);
-        //printf("<br>%s ", row2[0]);
-        }
-    sqlFreeResult(&sr2);
-
-    sqlSafef(query2, sizeof(query2),
-      "select sum(examined_samples) from cosmicRaw where cosmic_mutation_id='%s'",
-      itemName);
-    sr2 = sqlMustGetResult(conn2, query2);
-    row2 = sqlNextRow(sr2);
-    if (row2 != NULL)
-        {
-        printf("<BR><B>Total Examined Samples:</B> %s\n", row2[0]);
-	}
-    sqlFreeResult(&sr2);
-    sqlSafef(query2, sizeof(query2),
-      "select sum(mutated_samples)*100/sum(examined_samples) from cosmicRaw where cosmic_mutation_id='%s'",
-      itemName);
-    sr2 = sqlMustGetResult(conn2, query2);
-    row2 = sqlNextRow(sr2);
-    if (row2 != NULL)
-        {
-        char *chp;
-	chp = strstr(row2[0], ".");
-	if ((chp != NULL) && (strlen(chp) > 3))
-	   {
-	   chp++;
-	   chp++;
-	   chp++;
-	   chp++;
-	   *chp = '\0';
-	   }
-	printf("<BR><B>Total Mutation Frequency:</B> %s%c\n", row2[0], '%');
-	//printf("<br>%s", row2[0]);
-	}
-    sqlFreeResult(&sr2);
-
-    }
-
-sqlFreeResult(&sr);
-hFreeConn(&conn);
-
-printf("<HR>");
-printPosOnChrom(chrom, atoi(chromStart), atoi(chromEnd), NULL, FALSE, itemName);
-}
-
-void doCosmic(struct trackDb *tdb, char *item)
-/* Put up COSMIC track info. */
-{
-genericHeader(tdb, item);
-printCosmicDetails(tdb, item);
-printTrackHtml(tdb);
-}
 
 void printDecipherDetails(struct trackDb *tdb, char *itemName, boolean encode)
 /* Print details of a DECIPHER entry. */
 {
 struct sqlConnection *conn = hAllocConn(database);
 char query[256];
 struct sqlResult *sr;
 char **row;
 struct sqlConnection *conn2 = hAllocConn(database);
 char query2[256];
 struct sqlResult *sr2;
 char **row2;
 char *strand={"+"};
 int start = cartInt(cart, "o");
 int end = cartInt(cart, "t");
@@ -26505,34 +26316,30 @@
     {
     doParDetails(tdb, item);
     }
 else if (startsWith("pubs", table))
     {
     doPubsDetails(tdb, item);
     }
 else if (tdb != NULL && startsWith("bedDetail", tdb->type))
     {
     doBedDetail(tdb, NULL, item);
     }
 else if (startsWith("numtS", table))
     {
     doNumtS(tdb, item);
     }
-else if (startsWith("cosmic", table))
-    {
-    doCosmic(tdb, item);
-    }
 else if (sameString("geneReviews", table))
     {
     doGeneReviews(tdb, item);
     }
 else if (startsWith("qPcrPrimers", table))
     {
     doQPCRPrimers(tdb, item);
     }
 else if (sameString("lrg", table))
     {
     doLrg(tdb, item);
     }
 else if (sameString("lrgTranscriptAli", table))
     {
     doLrgTranscriptPsl(tdb, item);