09b32596f71fa9eac6a68820255b090f28546a05 tdreszer Mon Apr 25 14:04:06 2011 -0700 Checking in CGI usage of DOCTYPE 4.01 Transitional (instead of 3.2). Also removed some minor FONT tags that should be replaced by CSS. diff --git src/hg/lib/hui.c src/hg/lib/hui.c index 802e93c..61fea97 100644 --- src/hg/lib/hui.c +++ src/hg/lib/hui.c @@ -335,31 +335,31 @@ { return cfgOptionDefault("downloads.server", "hgdownload.cse.ucsc.edu"); } void setUdcCacheDir() /* set the path to the udc cache dir */ { udcSetDefaultDir(cfgOptionDefault("udc.cacheDir", udcDefaultDir())); } char *wrapWhiteFont(char *s) /* Write white font around s */ { static char buf[256]; -safef(buf, sizeof(buf), "%s", s); +safef(buf, sizeof(buf), "%s", s); return buf; } char *hDocumentRoot() /* get the path to the DocumentRoot, or the default */ { return cfgOptionDefault("browser.documentRoot", DOCUMENT_ROOT); } char *hHelpFile(char *fileRoot) /* Given a help file root name (e.g. "hgPcrResult" or "cutters"), * prepend the complete help directory path and add .html suffix. * Do not free the statically allocated result. */ { static char helpName[PATH_LEN]; @@ -3877,31 +3877,31 @@ printf(""); if (sortOrder != NULL) { // First table row contains the display "selected/visible" or "all" radio buttons // NOTE: list subtrack radio buttons are inside tracklist table header if there are no sort columns // The reason is to ensure spacing of lines column headers when the only column header is "Restricted Until" printf("List subtracks: "); char javascript[JBUFSIZE]; safef(javascript, sizeof(javascript), "onclick=\"showOrHideSelectedSubtracks(true);\""); cgiMakeOnClickRadioButton("displaySubtracks", "selected", !displayAll,javascript); puts("only selected/visible   "); safef(javascript, sizeof(javascript), "onclick=\"showOrHideSelectedSubtracks(false);\""); cgiMakeOnClickRadioButton("displaySubtracks", "all", displayAll,javascript); printf("all"); if (slCount(subtrackRefList) > 5) - printf("    ()"); + printf("    ()"); makeTopLink(parentTdb); printf(""); } else makeTopLink(parentTdb); // Now we can start in on the table of subtracks It may be sortable and/or dragAndDroppable printf("\n 0) dyStringAppendC(dyHtml,' '); @@ -3930,31 +3930,31 @@ else { printf("",useDragAndDrop?" id='noDrag' class='nodrop nodrag'":""); // First table row contains the display "selected/visible" or "all" radio buttons // NOTE: list subtrack radio buttons are inside tracklist table header if there are no sort columns // The reason is to ensure spacing of lines column headers when the only column header is "Restricted Until" printf(""); columnCount = colspan; } // Add column headers which are sort button links if (sortOrder != NULL) { printf("\n", sortOrder->htmlId, sortOrder->sortOrder); // keeing track of sortOrder columnCount++; // Columns in tdb order (unchanging), sort in cart order (changed by user action) int sIx=0; for(sIx=0;sIxcount;sIx++) { #ifdef SORT_ON_TRACK_NAME if (sameString(SORT_ON_TRACK_NAME,sortOrder->column[sIx])) @@ -4271,31 +4271,31 @@ cgiMakeHiddenBoolean(htmlIdentifier, TRUE); puts("[on] "); printf ("\n", subtrack->longLabel); } else if (hSameTrackDbType(primaryType, subtrack->type)) { puts("\n", subtrack->longLabel); } } puts(""); puts("
List subtracks: ", colspan); char javascript[JBUFSIZE]; safef(javascript, sizeof(javascript), "onclick=\"showOrHideSelectedSubtracks(true);\""); cgiMakeOnClickRadioButton("displaySubtracks", "selected", !displayAll,javascript); puts("only selected/visible   "); safef(javascript, sizeof(javascript), "onclick=\"showOrHideSelectedSubtracks(false);\""); cgiMakeOnClickRadioButton("displaySubtracks", "all", displayAll,javascript); printf("all"); if (slCount(subtrackRefList) > 5) - printf("    ()"); + printf("    ()"); puts(" %s [selected on main page]
"); cgiMakeCheckBox(htmlIdentifier, checkedCB && enabledCB); printf ("%s
"); if (slCount(subtrackRefList) > 5) - puts("    "); + puts("    "); puts("

"); if (!primarySubtrack) puts(""); } static void makeAddClearSubmitTweak(char javascript[JBUFSIZE], char *formName, char *buttonVar, char *label) /* safef into javascript a sequence of commands that will force a refresh * of this same form, updating the values of whatever variables are necessary * to say what we want to do. */ { safef(javascript, JBUFSIZE*sizeof(char), "document.%s.action = '%s'; document.%s.%s.value='%s'; " "document.%s.submit();", formName, cgiScriptName(), formName, buttonVar, label, @@ -6043,32 +6043,32 @@ return tdb; struct trackDb *view = rFindView(tdb->subtracks, viewName); if (view) return view; } return NULL; } static boolean hCompositeDisplayViewDropDowns(char *db, struct cart *cart, struct trackDb *parentTdb) /* UI for composite view drop down selections. */ { int ix; char varName[SMALLBUF]; char classes[SMALLBUF]; char javascript[JBUFSIZE]; -#define CFG_LINK "%s\n" -#define MAKE_CFG_LINK(name,title,tbl,open) printf(CFG_LINK, (name),(name),(name),(name),(title),(title),(tbl),(name),((open)?"on":"off")) +#define CFG_LINK "%s" +#define MAKE_CFG_LINK(name,title,tbl,open) printf(CFG_LINK, (name),(name),(title),(title),(tbl),(name),((open)?"on":"off")) members_t *membersOfView = subgroupMembersGet(parentTdb,"view"); if(membersOfView == NULL) return FALSE; char configurable[membersOfView->count]; memset(configurable,cfgNone,sizeof(configurable)); int firstOpened = -1; boolean makeCfgRows = FALSE; struct trackDb **matchedSubtracks = needMem(sizeof(struct trackDb *)*membersOfView->count); for (ix = 0; ix < membersOfView->count; ix++) { char *viewName = membersOfView->tags[ix]; struct trackDb *view = rFindView(parentTdb->subtracks, viewName); @@ -6078,46 +6078,46 @@ configurable[ix] = (char)cfgTypeFromTdb(view->subtracks, TRUE); if(configurable[ix] != cfgNone) { if(firstOpened == -1) { safef(varName, sizeof(varName), "%s.%s.showCfg", parentTdb->track, viewName); if(cartUsualBoolean(cart,varName,FALSE)) firstOpened = ix; } makeCfgRows = TRUE; } } } toLowerN(membersOfView->groupTitle, 1); -printf("Select %s (help):
\n", membersOfView->groupTitle); -puts(""); +printf("Select %s (help):\n", membersOfView->groupTitle); +printf("
\n"); // Make row of vis drop downs for (ix = 0; ix < membersOfView->count; ix++) { struct trackDb *view = matchedSubtracks[ix]; char *viewName = membersOfView->tags[ix]; if (view != NULL) { printf(""); safef(varName, sizeof(varName), "%s.%s.vis", parentTdb->track, viewName); enum trackVisibility tv = hTvFromString(cartUsualString(cart, varName,hStringFromTv(visCompositeViewDefault(parentTdb,viewName)))); safef(javascript, sizeof(javascript), "onchange=\"matSelectViewForSubTracks(this,'%s');\" onfocus='this.lastIndex=this.selectedIndex;'", viewName); printf(""); } } puts(""); @@ -6943,31 +6943,31 @@ if(trackDbSetting(tdb, "dragAndDrop") != NULL) jsIncludeFile("jquery.tablednd.js", NULL); jsIncludeFile("ajax.js",NULL); #ifdef TABLE_SCROLL jsIncludeFile("jquery.fixedtable.js",NULL); #endif//def TABLE_SCROLL } jsIncludeFile("hui.js",NULL); } #ifdef SUBTRACK_CFG_POPUP printf(""); cgiMakeHiddenVar("db", db); printf("\n",tdb->track); #endif -puts("

"); +puts("
"); if (trackDbCountDescendantLeaves(tdb) < MANY_SUBTRACKS && !hasSubgroups) { if(primarySubtrack) compositeUiSubtracksMatchingPrimary(db, cart, tdb,primarySubtrack); else compositeUiSubtracks(db, cart, tdb, trackHash); return; } if (fakeSubmit) cgiMakeHiddenVar(fakeSubmit, "submit"); if(primarySubtrack == NULL) { if(subgroupingExists(tdb,"view")) {

"); if(configurable[ix] != cfgNone) { MAKE_CFG_LINK(membersOfView->tags[ix],membersOfView->titles[ix],parentTdb->track,(firstOpened == ix)); } else - printf("%s\n",membersOfView->titles[ix]); + printf("%s",membersOfView->titles[ix]); puts(""); safef(classes, sizeof(classes), "viewDD normalText %s", membersOfView->tags[ix]); hTvDropDownClassWithJavascript(varName, tv, parentTdb->canPack,classes,javascript); puts("