3eb3e3814708879cc95ec61b4010d3d65c0ebb6b kate Thu Feb 9 17:52:03 2017 -0800 Add CSP compliance (mostly working). refs #18538 diff --git src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c index 68738c3..00f5bef 100644 --- src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c +++ src/hg/hgGtexTrackSettings/hgGtexTrackSettings.c @@ -234,71 +234,93 @@ and a lower panel with a tissue selection list. */ { puts( "\n" "
\n" "
\n"); printConfigPanel(tdb); printTissueTable(tdb); puts( "
\n" "
\n"); printBodyMap(); puts( "
\n" -"
\n"); +" \n" +); +} + +static void onclickJumpToTop(char *id) +/* CSP-safe click handler arrows that cause scroll to top */ +{ +char javascript[1024]; +safef(javascript, sizeof javascript, "$('html,body').scrollTop(0);"); +jsOnEventById("click", id, javascript); } static void printDataInfo(char *db, struct trackDb *tdb) { puts( "\n" "
\n" "
Data Information
\n" "
\n" -// TODO: move click handler to JS -" \n" +); +#define DATA_INFO_JUMP_ARROW_ID "hgGtexDataInfo_jumpArrow" +printf( +" \n", +DATA_INFO_JUMP_ARROW_ID +); +onclickJumpToTop(DATA_INFO_JUMP_ARROW_ID); +puts( "
\n" "
\n" ); puts( "
\n" "
\n"); puts("
"); printUpdateTime(db, tdb, NULL); puts("
"); puts("
"); makeSchemaLink(db, tdb, "View table schema"); puts("
"); puts( "
\n" "
\n"); } static void printTrackDescription(struct trackDb *tdb) { puts( "\n" "
\n" "
Track Description
\n" "
\n" -" \n" +); +#define TRACK_INFO_JUMP_ARROW_ID "hgGtexTrackInfo_jumpArrow" +printf( +" \n", +TRACK_INFO_JUMP_ARROW_ID +); +onclickJumpToTop(TRACK_INFO_JUMP_ARROW_ID); +puts( "
\n" "
\n" "
\n" "
\n"); puts(tdb->html); puts( "
\n" "
\n"); } 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)