1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.internal.renderkit.renderer;
21
22 import org.apache.myfaces.tobago.internal.component.AbstractUIFooter;
23 import org.apache.myfaces.tobago.internal.util.HtmlRendererUtils;
24 import org.apache.myfaces.tobago.renderkit.RendererBase;
25 import org.apache.myfaces.tobago.renderkit.css.BootstrapClass;
26 import org.apache.myfaces.tobago.renderkit.html.HtmlAttributes;
27 import org.apache.myfaces.tobago.renderkit.html.HtmlElements;
28 import org.apache.myfaces.tobago.renderkit.html.HtmlRoleValues;
29 import org.apache.myfaces.tobago.webapp.TobagoResponseWriter;
30
31 import javax.faces.context.FacesContext;
32 import java.io.IOException;
33
34 public class FooterRenderer<T extends AbstractUIFooter> extends RendererBase<T> {
35
36 @Override
37 public void encodeBeginInternal(final FacesContext facesContext, final T component) throws IOException {
38 final TobagoResponseWriter writer = getResponseWriter(facesContext);
39 writer.startElement(HtmlElements.TOBAGO_FOOTER);
40 writer.writeIdAttribute(component.getClientId(facesContext));
41
42 writer.writeClassAttribute(
43 component.isFixed() ? BootstrapClass.FIXED_BOTTOM : null,
44 component.getCustomClass());
45 writer.writeAttribute(HtmlAttributes.ROLE, HtmlRoleValues.CONTENTINFO.toString(), false);
46 writer.writeAttribute(HtmlAttributes.TITLE, component.getTip(), true);
47 HtmlRendererUtils.writeDataAttributes(facesContext, writer, component);
48 }
49
50 @Override
51 public void encodeEndInternal(final FacesContext facesContext, final T component) throws IOException {
52 final TobagoResponseWriter writer = getResponseWriter(facesContext);
53 writer.endElement(HtmlElements.TOBAGO_FOOTER);
54 }
55 }