%% ``The contents of this file are subject to the Erlang Public License, %% Version 1.1, (the "License"); you may not use this file except in %% compliance with the License. You should have received a copy of the %% Erlang Public License along with this software. If not, it can be %% retrieved via the world wide web at http://www.erlang.org/. %% %% Software distributed under the License is distributed on an "AS IS" %% basis, WITHOUT WARRANTY OF ANY KIND, either expressed or implied. See %% the License for the specific language governing rights and limitations %% under the License. %% %% The Initial Developer of the Original Code is Ericsson Utvecklings AB. %% Portions created by Ericsson are Copyright 1999-2000, Ericsson %% Utvecklings AB. All Rights Reserved.'' %% %% $Id$ %% -module(docb_html_layout). -export([report_top/2, report_bot/1, first_top/2, first_bot/1, ref_top/2, ref_bot/1, chapter_top/2, chapter_bot/1, application_toc_top/3, application_toc_top/4, part_toc_top/3, part_toc_top/4, part_toc_bot/0, index_top/1, index_bot/0]). %% Report report_top(Data, Opts) -> [Title, Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, Opts) ++ docb_util:html_snippet(top, Opts) ++ "<center> <h1>" ++ Title ++ "</h1> <big> " ++ DocNo ++ version(Opts, Vsn0) ++ "<br /> " ++ Prepared ++ "<br /> </big> </center> ". report_bot(Opts) -> docb_util:html_snippet(bottom, Opts) ++ "</body> </html> ". %% First first_top(Data, Opts) -> [Title, _Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, Opts) ++ docb_util:html_snippet(top, Opts) ++ "<center> <h1>" ++ Title ++ "</h1> <big>" ++ DocNo ++ version(Opts, Vsn0) ++ "<br /> </big> </center> ". first_bot(Opts) -> report_bot(Opts). %% Reference ref_top(Data, Opts) -> [Title, _Prepared, _Responsible, _DocNo, _Approved, _Checked, _Date, _Rev, _File] = Data, ref_html_header(Title, Opts) ++ "<!-- refpage -->\n" ++ docb_util:html_snippet(top, Opts) ++ "<center> <h1>" ++ Title ++ "</h1> </center>". ref_bot(Opts) -> docb_util:html_snippet(bottom, Opts) ++ "</body> </html> ". %% Chapter chapter_top(Data, Opts) -> [Title, _Prepared, _Responsible, _DocNo, _Approved, _Checked, _Date, _Rev, _File] = Data, html_header(Title, Opts) ++ docb_util:html_snippet(top, Opts). chapter_bot(Opts) -> report_bot(Opts). %% Application ToC application_toc_top(Data, DocName, Opts) -> [Title, _Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, []) ++ "<center> <strong>" ++ Title ++ "</strong> <p> <small> " ++ DocNo ++ version(Opts, Vsn0) ++ " </small> </p> <p> <small> <a target=\"document\" href=\"" ++ DocName ++ "_cite.html\">Bibliography</a> | <a target=\"document\" href=\"" ++ DocName ++ "_term.html\">Glossary</a> | <a target=\"document\" href=\"" ++ DocName ++ "_index.html\">Index</a> | <a target=\"document\" href=\"" ++ DocName ++ "_first.html\">Cover</a>" ++ top_index(Opts) ++ "</small> </p> </center> <p> <small> <strong>Table of Contents</strong> </small> </p> ". application_toc_top(Data, DocName, Opts, HRefTexts) -> [Title, _Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, []) ++ "<center> <small> " ++ docb_util:join( lists:map( fun({HRef, Text}) -> "<a target=\"_top\" href=\"" ++ HRef ++ "\">" ++ Text ++ "</a>" end, HRefTexts), " | ") ++ top_index(Opts) ++ "</small> <p> <strong>" ++ Title ++ "</strong> </p> <p> <small>" ++ DocNo ++ version(Opts, Vsn0) ++ "<br /> </small> </p> <p> <small> <a target=\"document\" href=\"" ++ DocName ++ "_cite.html\">Bibliography</a> | <a target=\"document\" href=\"" ++ DocName ++ "_term.html\">Glossary</a> | <a target=\"document\" href=\"" ++ DocName ++ "_index.html\">Index</a> | <a target=\"document\" href=\"" ++ DocName ++ "_first.html\">Cover</a> </small> </p> </center> <p> <small> <strong>Table of Contents</strong> </small> </p> ". %% Part ToC part_toc_top(Data, DocName, Opts) -> [Title, _Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, []) ++ "<center> <p> <strong>" ++ Title ++ "</strong> </p> <p> <small>" ++ DocNo ++ version(Opts, Vsn0) ++ "<br /> </small> </p> <p> <small> <a target=\"document\" href=\"" ++ DocName ++ "_cite.html\">Bibliography</a> | <a target=\"document\" href=\"" ++ DocName ++ "_term.html\">Glossary</a> | <a target=\"document\" href=\"" ++ DocName ++ "_first.html\">Cover</a>" ++ top_index(Opts) ++ "</small> </p> </center> <p> <small> <strong>Table of Contents</strong> </small> </p> ". part_toc_top(Data, DocName, Opts, HRefTexts) -> [Title, _Prepared, _Responsible, DocNo, _Approved, _Checked, _Date, Vsn0, _File] = Data, html_header(Title, []) ++ "<center> <p> <small> " ++ docb_util:join( lists:map( fun({HRef, Text}) -> "<a target=\"_top\" href=\"" ++ HRef ++ "\">" ++ Text ++ "</a>" end, HRefTexts), " | ") ++ top_index(Opts) ++ "</small> </p> <p> <strong>" ++ Title ++ "</strong> </p> <p> <small> " ++ DocNo ++ version(Opts, Vsn0) ++ "<br /> </small> </p> <p> <small> <a target=\"document\" href=\"" ++ DocName ++ "_cite.html\">Bibliography</a> | <a target=\"document\" href=\"" ++ DocName ++ "_term.html\">Glossary</a> | <a target=\"document\" href=\"" ++ DocName ++ "_first.html\">Cover</a> </small> </p> </center> <p> <small> <strong>Table of Contents</strong> </small> </p> ". part_toc_bot() -> "</body > </html> ". %% Index index_top(_Data) -> ref_html_header("INDEX", []) ++ "<h1>INDEX</h1> <p><em>Emphasized</em> index entries refer to <em>modules</em> and <code>Courier</code> ditos to <code>functions</code>.\n</p>\n". index_bot() -> part_toc_bot(). %% Internal functions html_header(Title, Opts) -> Vsn = docb_util:version(), %%"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> <!-- This document was generated using DocBuilder-" ++ Vsn ++ " --> <html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\"> <head> <title>" ++ Title ++ "</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\"/> " ++ docb_util:html_snippet(head, Opts) ++ " <style type=\"text/css\"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif } span.bold_code { font-family: courier;font-weight: bold} span.code { font-family: courier;font-weight: normal} .note, .warning { border: solid black 1px; margin: 1em 3em; } .note .label { background: #30d42a; color: white; font-weight: bold; padding: 5px 10px; } .note .content { background: #eafeea; color: black; line-height: 120%; font-size: 90%; padding: 5px 10px; } .warning .label { background: #C00; color: white; font-weight: bold; padding: 5px 10px; } .warning .content { background: #FFF0F0; color: black; line-height: 120%; font-size: 90%; padding: 5px 10px; } .example { background-color:#eeeeff } pre { font-family: courier; font-weight: normal } .REFBODY { margin-left: 13mm } .REFTYPES { margin-left: 8mm } --> </style> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#0000FF\" vlink=\"#FF00FF\" alink=\"#FF0000\"> ". ref_html_header(Title, Opts) -> Vsn = docb_util:version(), %%"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> "<!DOCTYPE html PUBLIC \"-//W3C//DTD XHTML 1.0 Transitional//EN\" \"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd\"> <!-- This document was generated using DocBuilder-" ++ Vsn ++ " --> <html xmlns=\"http://www.w3.org/1999/xhtml\" xml:lang=\"en\" lang=\"en\"> <head> <title>" ++ Title ++ "</title> <meta http-equiv=\"Content-Type\" content=\"text/html; charset=ISO-8859-1\"/> " ++ docb_util:html_snippet(head, Opts) ++ " <style type=\"text/css\"> <!-- body { font-family: Verdana, Arial, Helvetica, sans-serif } span.bold_code { font-family: courier;font-weight: bold} span.code { font-family: courier;font-weight: normal} .note, .warning { border: solid black 1px; margin: 1em 3em; } .note .label { background: #30d42a; color: white; font-weight: bold; padding: 5px 10px; } .note .content { background: #eafeea; color: black; line-height: 120%; font-size: 90%; padding: 5px 10px; } .warning .label { background: #C00; color: white; font-weight: bold; padding: 5px 10px; } .warning .content { background: #FFF0F0; color: black; line-height: 120%; font-size: 90%; padding: 5px 10px; } .example { background-color:#eeeeff } pre { font-family: courier; font-weight: normal } .REFBODY { margin-left: 13mm } .REFTYPES { margin-left: 8mm } --> </style> </head> <body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#0000FF\" vlink=\"#FF00FF\" alink=\"#FF0000\"> ". version(Opts, Vsn0) -> case docb_util:lookup_option(vsn, Opts, Vsn0) of "" -> ""; Vsn -> " Version " ++ Vsn end. top_index(Opts) -> case docb_util:lookup_option(top, Opts) of false -> ""; TIFile -> " | <a target=\"_top\" href=\"" ++ TIFile ++ "\">Top</a>" end.