/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.vertical.adminweb.handlers.xmlbuilders; import org.w3c.dom.Document; import org.w3c.dom.Element; import com.enonic.esl.containers.ExtendedMap; import com.enonic.esl.xml.XMLTool; import com.enonic.vertical.adminweb.AdminHandlerBaseServlet; import com.enonic.vertical.adminweb.VerticalAdminException; import com.enonic.cms.core.security.user.User; public class ContentPollXMLBuilder extends ContentBaseXMLBuilder implements ContentXMLBuilder { public void buildContentTypeXML( User user, Document doc, Element contentdata, ExtendedMap formItems ) throws VerticalAdminException { // Title Element tempElement = XMLTool.createElement( doc, contentdata, "title", formItems.getString( "title" ) ); // Body tempElement = XMLTool.createElement( doc, contentdata, "description" ); XMLTool.createCDATASection( doc, tempElement, formItems.getString( "description", "" ) ); // alternatives Element alternativesElem = XMLTool.createElement( doc, contentdata, "alternatives" ); alternativesElem.setAttribute( "count", formItems.getString( "totalcount", "0" ) ); if ( AdminHandlerBaseServlet.isArrayFormItem( formItems, "choice" ) ) { String choice[] = (String[]) formItems.get( "choice" ); String count[] = (String[]) formItems.get( "count" ); for ( int i = 0; i < choice.length; i++ ) { Element tmpElem = XMLTool.createElement( doc, alternativesElem, "alternative", choice[i] ); tmpElem.setAttribute( "id", String.valueOf( i ) ); if ( count[i].length() <= 0 ) { tmpElem.setAttribute( "count", "0" ); } else { tmpElem.setAttribute( "count", count[i] ); } } } else { XMLTool.createElement( doc, alternativesElem, "alternative", formItems.getString( "choice" ) ).setAttribute( "count", formItems.getString( "count" ) ); } String mChoice = formItems.getString( "multiplechoice", "" ); if ( "on".equals( mChoice ) ) { alternativesElem.setAttribute( "multiplechoice", "yes" ); } else { alternativesElem.setAttribute( "multiplechoice", "no" ); } } }