1639326af798f214402a1b2c96e0af4d0c124126
chinhli
Mon Aug 23 11:17:35 2010 -0700
NumtS tracks
diff --git src/hg/hgc/hgc.c src/hg/hgc/hgc.c
index 01f565f..291fbf1 100644
--- src/hg/hgc/hgc.c
+++ src/hg/hgc/hgc.c
@@ -22180,6 +22180,103 @@
return tdb;
}
+void doNumtS(struct trackDb *tdb, char *itemName)
+/* Put up page for NumtS. */
+{
+char *table = tdb->table;
+struct sqlConnection *conn = hAllocConn(database);
+struct bed *bed;
+char query[512];
+struct sqlResult *sr;
+char **row;
+boolean firstTime = TRUE;
+int start = cartInt(cart, "o");
+int num = 6;
+/* message strings */
+char clickMsg[128];
+char *openMsg1 = "Click 'browser' link below to open Genome Browser at genomic position where";
+char *openMsg2 = "maps\n";
+char *openMsgM = "Click 'browser' link below to open Genome Browser at mitochondrial position where";
+
+
+
+
+genericHeader(tdb, itemName);
+//genericClickHandler(tdb, itemName, NULL);
+genericBedClick(conn, tdb, itemName, start, num);
+printTBSchemaLink(tdb);
+printf("
");
+char *date = firstWordInLine(sqlTableUpdate(conn, table));
+if (date != NULL)
+ printf("Data last updated: %s
\n", date);
+
+if (sameString("numtS", table))
+ {
+ safef(query, sizeof(query),
+ "select chrom, chromStart, chromEnd, name, score, strand from numtSMitochondrion where name = '%s'", itemName); /* name like '%s%%'" */
+ strcpy(clickMsg, openMsgM);
+ }
+else if (sameString("numtSAssembled", table))
+ {
+ safef(query, sizeof(query),
+ "select chrom, chromStart, chromEnd, name, score, strand from numtSMitochondrion where name = '%s'", itemName);
+ strcpy(clickMsg, openMsgM);
+ }
+else if (sameString("numtSMitochondrion", table))
+ {
+ safef(query, sizeof(query),
+ "select chrom, chromStart, chromEnd, name, score, strand from numtS where name = '%s'", itemName);
+ strcpy(clickMsg, openMsg1);
+ }
+else if (sameString("numtSMitochondrionChrPlacement", table))
+ {
+ safef(query, sizeof(query),
+ "select chrom, chromStart, chromEnd, name, score, strand from numtS where name = '%s'", itemName);
+ strcpy(clickMsg, openMsg1);
+ }
+ sr = sqlGetResult(conn, query);
+ firstTime = TRUE;
+ printf("
"); + while ((row = sqlNextRow(sr)) != NULL) + { + printf(""); + if (firstTime) + { + firstTime = FALSE; + printf(""); + } + + + /* printTrackHtml(tdb); */ + hFreeConn(&conn); +} + + + void doMiddle() /* Generate body of HTML. */ { @@ -23333,6 +23430,13 @@ { doT2gDetails(tdb, item); } +else if (startsWith("numtS", table)) + // && (!sameString("numtSAssembled", table))) + { + //genericHeader(tdb, item); + //genericClickHandler(tdb, item, NULL); + doNumtS(tdb, item); + } else if (tdb != NULL) { genericClickHandler(tdb, item, NULL);%s item '%s' %s
", clickMsg, itemName, openMsg2); + /* printf("Click 'browser' link below to display item %s in + * %s track
", itemName, clickMsg); */ + /* printf ("table name: %s itemName: %s\n
", table, + * itemName); */ + + printf("BROWSER | NAME CHROMOSOME START END SIZE SCORE STRAND \n"); + printf("--------|--------------------------------------------------------------------------------------------\n"); + + } + bed = bedLoad6(row); + + if (sameString("numtSAssembled", table) || sameString("numtS", table)) + printf("browser | ", + hgTracksPathAndSettings(), database, bed->name); + else + printf("browser | ", + hgTracksPathAndSettings(), database, + bed->chrom, bed->chromStart+1, bed->chromEnd); + + printf("%-20s %-10s %9d %9d %5d %5d %1s", + bed->name, bed->chrom, bed->chromStart+1, bed->chromEnd, + (bed->chromEnd - bed->chromStart),bed->score, bed->strand); + + printf("