d290cfad327fd9e122186d8b5ccd54d0330714ae larrym Mon Oct 24 20:23:05 2011 -0700 remove obsolete TOO_TIMID_FOR_CURRENT_HTML_STANDARDS code (code cleanup to get ready for jabico related menu redesign) diff --git src/hg/lib/web.c src/hg/lib/web.c index 301c1a9..f8d9ecb 100644 --- src/hg/lib/web.c +++ src/hg/lib/web.c @@ -138,42 +138,37 @@ if (sameString(cgiUsualString("action",""),"encodeReleaseLog") || rStringIn("EncodeDataVersions", scriptName)) isEncode = TRUE; /* Preamble. */ dnaUtilOpen(); if (withHttpHeader) puts("Content-type:text/html\n"); if (withHtmlHeader) { char *newString, *ptr1, *ptr2; -//#define TOO_TIMID_FOR_CURRENT_HTML_STANDARDS -#ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - puts("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">"); -#else///ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS char *browserVersion; if (btIE == cgiClientBrowser(&browserVersion, NULL, NULL) && *browserVersion < '8') puts("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2//EN\">"); else puts("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\" \"http://www.w3.org/TR/html4/loose.dtd\">"); // Strict would be nice since it fixes atleast one IE problem (use of :hover CSS pseudoclass) //puts("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">"); -#endif///ndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS puts( "<HTML>" "\n" "<HEAD>" "\n" ); printf("\t%s\n", headerText); printf("\t<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html;CHARSET=iso-8859-1\">" "\n" "\t<META http-equiv=\"Content-Script-Type\" content=\"text/javascript\">" "\n" "\t<META HTTP-EQUIV=\"Pragma\" CONTENT=\"no-cache\">" "\n" "\t<META HTTP-EQUIV=\"Expires\" CONTENT=\"-1\">" "\n" "\t<TITLE>" ); /* we need to take any HTML formatting out of the titlebar string */ newString = cloneString(textOutBuf); for(ptr1=newString, ptr2=textOutBuf; *ptr2 ; ptr2++) @@ -215,134 +210,56 @@ "<IMG SRC=\"../images/ENCODE_scaleup_logo.png\" height=50 ALT=\"ENCODE Project at NHGRI\">" "</A>"); puts("<IMG SRC=\"../images/encodeDcc.jpg\" ALT=\"ENCODE Project at UCSC\">"); } else { puts("<IMG SRC=\"../images/title.jpg\">"); } puts("</TH></TR>" "\n" "" "\n" ); } /* Put up the hot links bar. */ if (isGisaid) { -#ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - printf("<TABLE WIDTH='100%%' class='topBlueBar' BORDER='0' CELLSPACING='0' CELLPADDING='2'><TR>\n"); printf("<TD><A HREF='../index.html' class='topbar'>Home</A></TD>\n"); // Home if (haveBlat) printf("<TD><A HREF='../cgi-bin/hgBlat?command=start' class='topbar'>Blat</A></TD>\n"); // Blat printf("<TD><A HREF='../cgi-bin/gisaidSample' class='topbar'>Sample View</A></TD>\n"); // Subject View printf("<TD><A HREF='../cgi-bin/hgTracks%s' class='topbar'>Sequence View</A></TD>\n",uiState); // Sequence View printf("<TD><A HREF='../cgi-bin/gisaidTable' class='topbar'>Table View</A></TD>\n"); // Table View printf("<TD style='width:95%%'> </TD></TR></TABLE>\n"); // last column squeezes other columns left - -#else///ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - printf("<TABLE WIDTH=\"100%%\" BGCOLOR=\"#000000\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\"><TR><TD>\n"); - printf("<TABLE WIDTH=\"100%%\" BGCOLOR=\"#2636D1\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\"><TR>\n"); - - /* Home */ - printf("<TD ALIGN=CENTER><A HREF=\"../index.html\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Home</FONT></A></TD>"); - - /* Blat */ - if (haveBlat) - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/hgBlat?command=start\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Blat</FONT></A></TD>"); - - /* Subject View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/gisaidSample\" class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Sample View</FONT>"); - - /* Sequence View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/hgTracks%s\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Sequence View</FONT></A></TD>", - uiState); - - /* Table View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/gisaidTable\" class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Table View</FONT>"); - - /* Help */ -/* disable help for the time being */ -/* - if (endsWith(scriptName, "hgBlat")) - { - printf("<TD ALIGN=CENTER><A HREF=\"/goldenPath/help/gsidTutorial.html#BLAT\" TARGET=_blank class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Help</FONT>"); - } - else - { - printf("<TD ALIGN=CENTER><A HREF=\"/goldenPath/help/sequenceViewHelp.html\" TARGET=_blank class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Help</FONT>"); - } -*/ - printf("</TR></TABLE>"); - printf("</TD></TR></TABLE>\n"); -#endif///def TOO_TIMID_FOR_CURRENT_HTML_STANDARDS } else if (isGsid) { -#ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - printf("<TABLE class='topBlueBar' BORDER='0' CELLSPACING='0' CELLPADDING='2'><TR>\n"); printf("<TD><A HREF='../index.html' class='topbar'>Home</A></TD>\n"); // Home if (haveBlat) printf("<TD ALIGN=CENTER><A HREF='../cgi-bin/hgBlat?command=start' class='topbar'>Blat</A></TD>\n"); // Blat printf("<TD><A HREF='../cgi-bin/gsidSubj' class='topbar'>Subject View</A></TD>\n"); // Subject View printf("<TD><A HREF='../cgi-bin/hgTracks%s' class='topbar'>Sequence View</A></TD>\n",uiState); // Sequence View printf("<TD><A HREF='../cgi-bin/gsidTable' class='topbar'>Table View</A></TD>\n"); // Table View if (endsWith(scriptName, "hgBlat")) printf("<TD><A HREF='/goldenPath/help/gsidTutorial.html#BLAT' TARGET=_blank class='topbar'>Help</A></TD>\n"); // Help else printf("<TD><A HREF='/goldenPath/help/sequenceViewHelp.html' TARGET=_blank class='topbar'>Help</A></TD>\n"); // Help printf("<TD style='width:95%%'> </TD></TR></TABLE>\n"); // last column squeezes other columns left - -#else///ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - printf("<TABLE WIDTH=\"100%%\" BGCOLOR=\"#000000\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\"><TR><TD>\n"); - printf("<TABLE WIDTH=\"100%%\" BGCOLOR=\"#2636D1\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"2\"><TR>\n"); - - /* Home */ - printf("<TD ALIGN=CENTER><A HREF=\"../index.html\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Home</FONT></A></TD>"); - - /* Blat */ - if (haveBlat) - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/hgBlat?command=start\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Blat</FONT></A></TD>"); - - /* Subject View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/gsidSubj\" class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Subject View</FONT>"); - - /* Sequence View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/hgTracks%s\" class=\"topbar\"><FONT COLOR=\"#FFFFFF\">Sequence View</FONT></A></TD>", - uiState); - - /* Table View */ - printf("<TD ALIGN=CENTER><A HREF=\"../cgi-bin/gsidTable\" class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Table View</FONT>"); - - /* Help */ - - if (endsWith(scriptName, "hgBlat")) - { - printf("<TD ALIGN=CENTER><A HREF=\"/goldenPath/help/gsidTutorial.html#BLAT\" TARGET=_blank class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Help</FONT>"); - } - else - { - printf("<TD ALIGN=CENTER><A HREF=\"/goldenPath/help/sequenceViewHelp.html\" TARGET=_blank class=\"topbar\">%s</A></TD>", "<FONT COLOR=\"#FFFFFF\">Help</FONT>"); - } - printf("</TR></TABLE>"); - printf("</TD></TR></TABLE>\n"); -#endif///def TOO_TIMID_FOR_CURRENT_HTML_STANDARDS } else if (dbIsFound) { -#ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - puts("<!-- +++++++++++++++++++++ HOTLINKS BAR +++++++++++++++++++ -->\n<TR><TD COLSPAN=3 HEIGHT=40>"); puts("<TABLE class='topBlueBar' BORDER='0' CELLSPACING='0' CELLPADDING='2'><TR>"); if (isEncode) printf("<TD><A HREF='../encode/' class='topbar'>Home</A></TD>\n"); else { printf("<TD><A HREF='../index.html%s' class='topbar'>Home</A></TD>\n", uiState); if (isGsid) printf("<TD><A HREF='../cgi-bin/gsidSubj%s' class='topbar'>Subject View</A></TD>\n",uiState); else printf("<TD><A HREF='../cgi-bin/hgGateway%s' class='topbar'>Genomes</A></TD>\n",uiState); if (endsWith(scriptName, "hgTracks") || endsWith(scriptName, "hgGene") || endsWith(scriptName, "hgTables") || endsWith(scriptName, "hgTrackUi") || @@ -414,224 +331,48 @@ printf("<TD><A HREF='../goldenPath/help/hgGenomeHelp.html'"); else if (endsWith(scriptName, "hgSession")) printf("<TD><A HREF='../goldenPath/help/hgSessionHelp.html'"); else if (endsWith(scriptName, "pbGateway")) printf("<TD><A HREF='../goldenPath/help/pbTracksHelpFiles/pbTracksHelp.shtml'"); else if (endsWith(scriptName, "hgVisiGene")) printf("<TD><A HREF='../goldenPath/help/hgTracksHelp.html#VisiGeneHelp'"); else printf("<TD><A HREF='../goldenPath/help/hgTracksHelp.html'"); printf(" class='topbar'>Help</A></TD>\n"); } } printf("<TD style='width:95%%'> </TD></TR></TABLE>\n"); // last column squeezes other columns left puts("</TD></TR>\n"); -#else///ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - puts( - "<!-- +++++++++++++++++++++ HOTLINKS BAR +++++++++++++++++++ -->" "\n" - "<TR><TD COLSPAN=3 HEIGHT=40 >" "\n" - "<table bgcolor=\"#000000\" cellpadding=\"1\" cellspacing=\"1\" width=\"100%\" height=\"27\">" "\n" - "<tr bgcolor=\"#"HG_COL_HOTLINKS"\"><td valign=\"middle\">" "\n" - " <table BORDER=0 CELLSPACING=0 CELLPADDING=0 bgcolor=\"#"HG_COL_HOTLINKS"\" height=\"24\" class=\"topbar\"><TR>" "\n" - " <TD VALIGN=\"middle\"><font color=\"#89A1DE\">" "\n" - ); - -if (isEncode) - { - printf("<A HREF=\"../encode/\" class=\"topbar\">" "\n"); - puts(" Home</A>"); - } -else - { - printf("<A HREF=\"../index.html%s\" class=\"topbar\">" "\n", uiState); - puts(" Home</A> "); - if (isGsid) - { - printf(" <A HREF=\"../cgi-bin/gsidSubj%s\" class=\"topbar\">\n", - uiState); - puts(" Subject View</A> "); - } - if (!isGsid) - { - printf(" <A HREF=\"../cgi-bin/hgGateway%s\" class=\"topbar\">\n", - uiState); - puts(" Genomes</A> "); - } - if (endsWith(scriptName, "hgTracks") || endsWith(scriptName, "hgGene") || - endsWith(scriptName, "hgTables") || endsWith(scriptName, "hgTrackUi") || - endsWith(scriptName, "hgSession") || endsWith(scriptName, "hgCustom") || - endsWith(scriptName, "hgHubConnect") || - endsWith(scriptName, "hgc") || endsWith(scriptName, "hgPal")) - { - printf(" <A HREF='../cgi-bin/hgTracks%s&hgTracksConfigPage=notSet&%s=0' class='topbar'>\n", - uiState,TRACK_SEARCH); - puts(" Genome Browser</A> "); - } - if (haveBlat && !endsWith(scriptName, "hgBlat")) - { - printf(" <A HREF=\"../cgi-bin/hgBlat?command=start%s%s\" class=\"topbar\">", - theCart ? "&" : "", uiState+1 ); - puts(" Blat</A> "); - } - } - { - char *table = (theCart == NULL ? NULL : - (endsWith(scriptName, "hgGene") ? - cartOptionalString(theCart, "hgg_type") : - cartOptionalString(theCart, "g"))); - if (table && theCart && - (endsWith(scriptName, "hgc") || endsWith(scriptName, "hgTrackUi") || - endsWith(scriptName, "hgGene"))) - { - struct trackDb *tdb = hTrackDbForTrack(db, table); - if (tdb != NULL) - printf(" <A HREF=\"../cgi-bin/hgTables%s&hgta_doMainPage=1&" - "hgta_group=%s&hgta_track=%s&hgta_table=%s\" " - "class=\"topbar\">\n", - uiState, tdb->grp, tdb->track, tdb->table); - else - printf(" <A HREF=\"../cgi-bin/hgTables%s&hgta_doMainPage=1\" " - "class=\"topbar\">\n", - uiState); - trackDbFree(&tdb); - } - else - printf(" <A HREF=\"../cgi-bin/hgTables%s%shgta_doMainPage=1\" " - "class=\"topbar\">\n", - uiState, theCart ? "&" : "?" ); - } - /* disable TB for both GSID and CGB servers */ - if (!isGsid && !hIsCgbServer()) puts(" Tables</A> "); - if (!endsWith(scriptName, "hgNear")) - /* possible to make this conditional: if (db != NULL && hgNearOk(db)) */ - if (db != NULL && hgNearOk(db)) - { - if (isGsid) - { - printf(" <A HREF=\"../cgi-bin/gsidTable%s\" class=\"topbar\">\n", - uiState); - puts(" Table View</A> "); - } - else - { - printf(" <A HREF=\"../cgi-bin/hgNear%s\" class=\"topbar\">\n", - uiState); - puts(" Gene Sorter</A> "); - } - } - if ((!endsWith(scriptName, "hgPcr")) && (db == NULL || hgPcrOk(db))) - { - printf(" <A HREF=\"../cgi-bin/hgPcr%s\" class=\"topbar\">\n", - uiState); - puts(" PCR</A> "); - } - if (endsWith(scriptName, "hgGenome")) - { - printf(" <A HREF=\"../cgi-bin/hgGenome%s&hgGenome_doPsOutput=on\" class=\"topbar\">\n", - uiState); - puts(" PDF/PS</A> "); - } - if (endsWith(scriptName, "hgHeatmap")) - { - printf(" <A HREF=\"../cgi-bin/hgHeatmap%s&hgHeatmap_doPsOutput=on\" class=\"topbar\">\n", - uiState); - puts(" PDF/PS</A> "); - } -#ifndef GBROWSE - if (wikiLinkEnabled() && !endsWith(scriptName, "hgSession")) - { - printf("<A HREF=\"../cgi-bin/hgSession%s%shgS_doMainPage=1\" " - "class=\"topbar\">Session</A>", - uiState, theCart ? "&" : "?" ); - puts(""); - } -#endif /* GBROWSE */ - if (!isGsid) puts(" <A HREF=\"../FAQ/\" class=\"topbar\">" "\n" - " FAQ</A> " "\n" - ); - if (!isGsid) - { - if (endsWith(scriptName, "hgBlat")) - puts(" <A HREF=\"../goldenPath/help/hgTracksHelp.html#BLATAlign\""); - else if (endsWith(scriptName, "hgText")) - puts(" <A HREF=\"../goldenPath/help/hgTextHelp.html\""); - else if (endsWith(scriptName, "hgNear")) - puts(" <A HREF=\"../goldenPath/help/hgNearHelp.html\""); - else if (endsWith(scriptName, "hgTables")) - puts(" <A HREF=\"../goldenPath/help/hgTablesHelp.html\""); - else if (endsWith(scriptName, "hgGenome")) - puts(" <A HREF=\"../goldenPath/help/hgGenomeHelp.html\""); - else if (endsWith(scriptName, "hgSession")) - puts(" <A HREF=\"../goldenPath/help/hgSessionHelp.html\""); - else if (endsWith(scriptName, "pbGateway")) - puts(" <A HREF=\"../goldenPath/help/pbTracksHelpFiles/pbTracksHelp.shtml\""); - else if (endsWith(scriptName, "hgVisiGene")) - puts(" <A HREF=\"../goldenPath/help/hgTracksHelp.html#VisiGeneHelp\""); - else - puts(" <A HREF=\"../goldenPath/help/hgTracksHelp.html\""); - puts(" class=\"topbar\">"); - puts(" Help</A> "); - } - } -puts("</font></TD>" "\n" - " </TR></TABLE>" "\n" - "</TD></TR></TABLE>" "\n" - "</TD></TR> " "\n" - "" "\n" - ); -#endif///def TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - if(!skipSectionHeader) /* this HTML must be in calling code if skipSectionHeader is TRUE */ { -#ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS puts( // TODO: Replace nested tables with CSS (difficulty is that tables are closed elsewhere) "<!-- +++++++++++++++++++++ CONTENT TABLES +++++++++++++++++++ -->" "\n" "<TR><TD COLSPAN=3>\n" " <!--outer table is for border purposes-->\n" " <TABLE WIDTH='100%' BGCOLOR='#" HG_COL_BORDER "' BORDER='0' CELLSPACING='0' CELLPADDING='1'><TR><TD>\n" " <TABLE BGCOLOR='#" HG_COL_INSIDE "' WIDTH='100%' BORDER='0' CELLSPACING='0' CELLPADDING='0'><TR><TD>\n" " <div class='subheadingBar'><div class='windowSize' id='sectTtl'>" ); htmlTextOut(textOutBuf); puts( " </div></div>\n" " <TABLE BGCOLOR='#" HG_COL_INSIDE "' WIDTH='100%' CELLPADDING=0><TR><TH HEIGHT=10></TH></TR>\n" " <TR><TD WIDTH=10> </TD><TD>\n\n" ); -#else///ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - puts( - "<!-- +++++++++++++++++++++ CONTENT TABLES +++++++++++++++++++ -->" "\n" - "<TR><TD COLSPAN=3> " "\n" - " <!--outer table is for border purposes-->" "\n" - " <TABLE WIDTH=\"100%\" BGCOLOR=\"#"HG_COL_BORDER"\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\"><TR><TD> " "\n" - " <TABLE BGCOLOR=\"#"HG_COL_INSIDE"\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\"><TR><TD> " "\n" - " <TABLE BGCOLOR=\"#"HG_COL_HEADER"\" BACKGROUND=\"../images/hr.gif\" WIDTH=\"100%\"><TR><TD class='windowSize'>" "\n" - " <FONT SIZE=\"4\" id='sectTtl'><b> " - ); - htmlTextOut(textOutBuf); - - puts( - "</b></FONT></TD><TD></TD></TR></TABLE>" "\n" - " <TABLE BGCOLOR=\"#"HG_COL_INSIDE"\" WIDTH=\"100%\" CELLPADDING=0><TR><TH HEIGHT=10></TH></TR>" "\n" - " <TR><TD WIDTH=10> </TD><TD>" "\n" - " " "\n" - ); -#endif///def TOO_TIMID_FOR_CURRENT_HTML_STANDARDS - }; webPushErrHandlers(); /* set the flag */ webHeadAlreadyOutputed = TRUE; } /* static void webStartWrapperDetailedInternal() */ void webStartWrapperDetailedArgs(struct cart *theCart, char *db, char *headerText, char *format, va_list args, boolean withHttpHeader, boolean withLogo, boolean skipSectionHeader, boolean withHtmlHeader) /* output a CGI and HTML header with the given title in printf format */ { char textOutBuf[1024]; va_list argscp; va_copy(argscp,args); @@ -706,66 +447,45 @@ " </TD><TD WIDTH=15></TD></TR></TABLE>" "\n" // "<BR>" " </TD></TR></TABLE>" "\n" " </TD></TR></TABLE>" "\n" " " ); } void webNewSection(char* format, ...) /* create a new section on the web page */ { va_list args; va_start(args, format); webEndSection(); puts("<!-- +++++++++++++++++++++ START NEW SECTION +++++++++++++++++++ -->"); -#ifndef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS puts( // TODO: Replace nested tables with CSS (difficulty is that tables are closed elsewhere) "<BR>\n\n" " <!--outer table is for border purposes-->\n" " <TABLE WIDTH='100%' BGCOLOR='#" HG_COL_BORDER "' BORDER='0' CELLSPACING='0' CELLPADDING='1'><TR><TD>\n" " <TABLE BGCOLOR='#" HG_COL_INSIDE "' WIDTH='100%' BORDER='0' CELLSPACING='0' CELLPADDING='0'><TR><TD>\n" " <div class='subheadingBar' class='windowSize'>" ); vprintf(format, args); puts( " </div>\n" " <TABLE BGCOLOR='#" HG_COL_INSIDE "' WIDTH='100%' CELLPADDING=0><TR><TH HEIGHT=10></TH></TR>\n" " <TR><TD WIDTH=10> </TD><TD>\n\n" ); -#else///ifdef TOO_TIMID_FOR_CURRENT_HTML_STANDARDS -puts( - "<BR>" "\n" - "" "\n" - " <!--outer table is for border purposes-->" "\n" - " <TABLE WIDTH=\"100%\" BGCOLOR=\"#"HG_COL_BORDER"\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"1\"><TR><TD> " "\n" - " <TABLE BGCOLOR=\"#"HG_COL_INSIDE"\" WIDTH=\"100%\" BORDER=\"0\" CELLSPACING=\"0\" CELLPADDING=\"0\"><TR><TD> " "\n" - " <TABLE BGCOLOR=\"#"HG_COL_HEADER"\" BACKGROUND=\"../images/hr.gif\" WIDTH=\"100%\"><TR><TD>" "\n" - " <FONT SIZE=\"4\"><b> " -); - -vprintf(format, args); - -puts( - " </b></FONT></TD></TR></TABLE>" "\n" - " <TABLE BGCOLOR=\"#"HG_COL_INSIDE"\" WIDTH=\"100%\" CELLPADDING=0><TR><TH HEIGHT=10></TH></TR>" "\n" - " <TR><TD WIDTH=10> </TD><TD>" "\n" - "" "\n" -); -#endif///def TOO_TIMID_FOR_CURRENT_HTML_STANDARDS va_end(args); } void webEndSectionTables() /* Finish with section tables (but don't do /BODY /HTML lik * webEnd does. */ { webEndSection(); puts("</TD></TR></TABLE>\n"); } void webEnd() /* output the footer of the HTML page */ {