9ab0ae3be4331e190b21e2caef88ed5ddbd44ca9 galt Wed Feb 22 15:29:02 2017 -0800 Fixes #18918. hgTrackUi SuperTrack config had id-conflict. Resolved by adding _check suffix to the checkbox id. diff --git src/hg/hgTrackUi/hgTrackUi.c src/hg/hgTrackUi/hgTrackUi.c index fbcb09c..6ffb83b 100644 --- src/hg/hgTrackUi/hgTrackUi.c +++ src/hg/hgTrackUi/hgTrackUi.c @@ -2749,36 +2749,35 @@ printf("\n<TR><TD NOWRAP colspan=2>"); printf("<IMG height=18 width=18 id='btn_plus_all' src='../images/add_sm.gif'>"); jsOnEventById("click", "btn_plus_all", "superT.plusMinus(true);"); printf("<IMG height=18 width=18 id='btn_minus_all' src='../images/remove_sm.gif'>"); jsOnEventById("click", "btn_minus_all", "superT.plusMinus(false);"); printf(" <B>All</B><BR>"); printf("</TD></TR>\n"); } printf("<TR><TD NOWRAP>"); if (!tdbIsDownloadsOnly(tdb)) { char id[256]; enum trackVisibility tv = hTvFromString(cartUsualString(cart, tdb->track,hStringFromTv(tdb->visibility))); // Don't use cheapCgi code... no name and no boolshad... just js + safef(id, sizeof id, "%s_check", tdb->track); printf("<INPUT TYPE=CHECKBOX id='%s'%s>", - tdb->track, (tv != tvHide?" CHECKED":"")); - safef(id, sizeof id, "%s", tdb->track); + id, (tv != tvHide?" CHECKED":"")); jsOnEventById("change", id, "superT.childChecked(this);"); - safef(javascript, sizeof(javascript), "superT.selChanged(this)"); struct slPair *event = slPairNew("change", cloneString(javascript)); hTvDropDownClassVisOnlyAndExtra(tdb->track, tv, tdb->canPack, (tv == tvHide ? "hiddenText":"normalText"), trackDbSetting(tdb, "onlyVisibility"), event); printf("</TD>\n<TD>"); safef(id, sizeof id, "%s_link", tdb->track); printf("<A HREF='%s?%s=%s&c=%s&g=%s' id='%s'>" "%s</A> ", (tdbIsDownloadsOnly(tdb)? hgFileUiName(): hgTrackUiName()), cartSessionVarName(), cartSessionId(cart), chromosome, cgiEncode(tdb->track), id, tdb->shortLabel); jsOnEventById("click", id, "superT.submitAndLink(this);"); }