001package Torello.Browser.JsonAST;
002
003import Torello.Java.StrPrint;
004
005/** Generates the top level HTML page for the "Browser" and the "Java Script" API's. */
006@Torello.JavaDoc.Annotations.StaticFunctional
007@Torello.JavaDoc.Annotations.JDHeaderBackgroundImg(EmbedTagFileID="TOHTML_JDHBI")
008public class HTML$API
009{
010    private HTML$API() { }
011
012    static String run(final API api)
013    {
014        final StringBuilder sb = new StringBuilder();
015
016        sb.append(
017            "<HTML>\n<HEAD>\n" +
018            "<TITLE>" + api.name + "</TITLE>\n" +
019            "<META ITEMPROP=\"startDate\" CONTENT=\"" + StrPrint.dateStr() + " \">\n" +
020            "<LINK REL=stylesheet TYPE='text/css' HREF='ChromeAPI.css' />\n" +
021            "<SCRIPT TYPE='text/javascript' SRC='ChromeAPI.js'>\n" +
022            // LFEC.loadFile("ChromeAPI/GetChromeAPI.js") +
023            "</SCRIPT>\n" +
024            "</HEAD>\n<BODY onload='LOAD();'>\n" +
025            "<H1>Available " + api.name + " Domains</H1>\n"
026        );
027
028        for (final Domain domain : api.domains) sb.append(
029            "<BUTTON " +
030            "onclick=\"showMainDIV('" + domain.name + "');\" " +
031            (domain.deprecated ? "DISABLED>" : ">") +
032            domain.name +
033            "</BUTTON>\n"
034        );
035
036        sb.append("<BR /><BR />\n\n");
037
038        for (final Domain domain : api.domains) sb.append(HTML$Domain.run(domain));
039
040        sb.append("</BODY>\n</HTML>\n");
041
042        return sb.toString();
043    }
044}