1 /*******************************************************************************
\r
2 * ============LICENSE_START====================================================
\r
4 * * ===========================================================================
\r
5 * * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
\r
6 * * Copyright © 2017 Amdocs
\r
7 * * ===========================================================================
\r
8 * * Licensed under the Apache License, Version 2.0 (the "License");
\r
9 * * you may not use this file except in compliance with the License.
\r
10 * * You may obtain a copy of the License at
\r
12 * * http://www.apache.org/licenses/LICENSE-2.0
\r
14 * * Unless required by applicable law or agreed to in writing, software
\r
15 * * distributed under the License is distributed on an "AS IS" BASIS,
\r
16 * * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
17 * * See the License for the specific language governing permissions and
\r
18 * * limitations under the License.
\r
19 * * ============LICENSE_END====================================================
\r
21 * * ECOMP is a trademark and service mark of AT&T Intellectual Property.
\r
23 ******************************************************************************/
\r
24 package com.att.xgen.html;
\r
26 import java.io.Writer;
\r
28 import com.att.xgen.Mark;
\r
30 public class HTML5Gen extends HTMLGen {
\r
31 public HTML5Gen(Writer w) {
\r
36 public HTMLGen html(String ... attrib) {
\r
37 //forward.println("<!DOCTYPE html>");
\r
38 incr("html",attrib);
\r
43 public Mark head() {
\r
44 Mark head = new Mark("head");
\r
45 incr(head).directive("meta","charset=utf-8");
\r
50 public Mark body(String ... attrs) {
\r
51 Mark body = new Mark("body");
\r
52 incr(body,"body",attrs);
\r
58 public HTML5Gen charset(String charset) {
\r
59 forward.append("<meta charset=\"");
\r
60 forward.append(charset);
\r
61 forward.append("\">");
\r
67 public Mark header(String ... attribs) {
\r
68 Mark mark = new Mark("header");
\r
69 incr(mark, mark.comment, attribs);
\r
74 public Mark footer(String ... attribs) {
\r
75 Mark mark = new Mark("footer");
\r
76 incr(mark, mark.comment, attribs);
\r
81 public Mark section(String ... attribs) {
\r
82 Mark mark = new Mark("section");
\r
83 incr(mark, mark.comment,attribs);
\r
88 public Mark article(String ... attribs) {
\r
89 Mark mark = new Mark("article");
\r
90 incr(mark, mark.comment,attribs);
\r
95 public Mark aside(String ... attribs) {
\r
96 Mark mark = new Mark("aside");
\r
97 incr(mark, mark.comment,attribs);
\r
102 public Mark nav(String ... attribs) {
\r
103 Mark mark = new Mark("nav");
\r
104 incr(mark, mark.comment,attribs);
\r
110 // protected void importCSS(Imports imports) {
\r
111 // if(imports.css.size() == 1) {
\r
112 // cssInline(imports.css.get(0));
\r
114 // for(String str : imports.css) {
\r
115 // forward.print("<link rel=\"stylesheet\" href=\"");
\r
116 // forward.print(imports.themePath(null));
\r
117 // forward.print(str);
\r
118 // forward.println("\">");
\r
125 public void chromeFrame() {
\r
126 this.textCR(0,"<!--[if IE]>");
\r
127 Mark mark = new Mark();
\r
128 this.leaf(mark, "script","type=text/javascript","src=http://ajax.googleapis.com/ajax/libs/chrome-frame/1/CFInstall.min.js")
\r
130 this.incr(mark, "style")
\r
131 .textCR(0,".chromeFrameInstallDefaultStyle {")
\r
132 .textCR(1,"width: 100%; /* default is 800px * /")
\r
133 .textCR(1,"border: 5px solid blue;")
\r
137 this.incr(mark,"div","id=prompt"); // auto comment would break IE specific Script
\r
138 // "if IE without GCF, prompt goes here"
\r
139 this.text("Please load this plugin to run ClientSide Websockets")
\r
142 this.incr(mark, "script")
\r
143 .textCR(0, "// The conditional ensures that this code will only execute in IE,")
\r
144 .textCR(0, "// Therefore we can use the IE-specific attachEvent without worry")
\r
145 .textCR(0, "window.attachEvent('onload', function() {")
\r
146 .textCR(1,"CFInstall.check({")
\r
147 .textCR(2,"mode: 'inline', // the default")
\r
148 .textCR(2,"node: 'prompt'")
\r
153 this.textCR(0,"<![endif]-->");
\r