\n");
puts(
"");
char buf[512];
-safef(buf, sizeof(buf), "%s%s.%s", cgiMultListShadowPrefix(), trackDb->track, GTEX_TISSUE_SELECT);
+safef(buf, sizeof(buf), "%s%s.%s", cgiMultListShadowPrefix(), tdb->track, GTEX_TISSUE_SELECT);
cgiMakeHiddenVar(buf, "0");
}
-static void printTrackConfig()
+static void printTrackConfig(struct trackDb *tdb)
/* Print track configuration panels, including Body Map.
The layout is 2-column. Left column is body map SVG.
Right column has a top panel for configuration settings (non-tissue),
and a lower panel with a tissue selection list.
*/
{
puts(
"\n"
"
\n");
}
-static struct trackDb *getTrackDb(char *database, char *track)
+static struct trackDb *getTrackDb(char *db, char *track)
/* Check if this is an assembly with GTEx track and get trackDb */
{
struct sqlConnection *conn = sqlConnect(db);
if (conn == NULL)
errAbort("Can't connect to database %s\n", db);
char where[256];
safef(where, sizeof(where), "tableName='%s'", track);
// TODO: use hdb, hTrackDbList to get table names of trackDb,
struct trackDb *tdb = trackDbLoadWhere(conn, "trackDb", where);
trackDbAddTableField(tdb);
sqlDisconnect(&conn);
return tdb;
}
static void doMiddle(struct cart *theCart)
/* Send HTML with javascript to display the user interface. */
{
cart = theCart;
+char *db = NULL, *genome = NULL, *clade = NULL;
+getDbGenomeClade(cart, &db, &genome, &clade, oldVars);
// Start web page with new-style header
webStartGbNoBanner(cart, db, "Genome Browser GTEx Track Settings");
puts("");
-char *genome = NULL, *clade = NULL;
-getDbGenomeClade(cart, &db, &genome, &clade, oldVars);
char *track = cartString(cart, "g");
-trackDb = getTrackDb(db, track);
-if (!trackDb)
+struct trackDb *tdb = getTrackDb(db, track);
+if (!tdb)
errAbort("No GTEx track %s found in database %s\n", track, db);
-version = gtexVersion(track);
// Container for bootstrap grid layout
puts(
"
\n");
// Print form with configuration HTML, and track description
printf(
"");
-printDataInfo();
-if (trackDb->html)
- printTrackDescription();
+printDataInfo(db, tdb);
+if (tdb->html)
+ printTrackDescription(tdb);
puts(
"
");
// Initialize illustration display and handle mouseover and clicks
puts("");
webIncludeFile("inc/gbFooter.html");
webEndJWest();
}
int main(int argc, char *argv[])
/* Process CGI / command line. */
{
/* Null terminated list of CGI Variables we don't want to save to cart */