/*
* Copyright 2011-2012 Blazebit
*/
package com.blazebit.blazefaces.renderkit.encoder;
import java.io.IOException;
import java.util.Map;
import javax.faces.context.FacesContext;
import javax.faces.context.ResponseWriter;
import com.blazebit.blazefaces.context.BlazeEncoder;
/**
*
* @author Christian Beikov
*/
public class PanelEncoder implements BlazeEncoder{
public void encode(FacesContext ctx, Map<String, Object> attributes) throws IOException {
ResponseWriter response = ctx.getResponseWriter();
response.startElement("div", null);
response.writeAttribute("id", attributes.get("id"), null);
response.writeAttribute("class", "panel-wrapper media-uploading", null);
response.startElement("div", null);
response.writeAttribute("class", "panel-title", null);
response.startElement("div", null);
response.writeAttribute("class", "lft", null);
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "mdl", null);
response.startElement("a", null);
response.writeAttribute("class", "toggle", null);
response.writeAttribute("href", "#", null);
response.write("Toggle");
response.endElement("a");
response.startElement("h3", null);
response.write(attributes.get("title") != null ? attributes.get("title").toString() : "");
response.endElement("h3");
response.startElement("span", null);
response.writeAttribute("class", "sortable-click-area", null);
response.write("Move");
response.endElement("span");
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "rgt", null);
response.endElement("div");
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "panel-body", null);
response.startElement("div", null);
response.writeAttribute("class", "panel-content", null);
if(attributes.get("chain") != null)
((BlazeEncoder)attributes.get("chain")).encode(ctx, attributes);
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "panel-bottom", null);
response.startElement("div", null);
response.writeAttribute("class", "lft", null);
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "mdl", null);
response.endElement("div");
response.startElement("div", null);
response.writeAttribute("class", "rgt", null);
response.endElement("div");
response.endElement("div");
response.endElement("div");
response.endElement("div");
}
}