package org.gcube.portlets.admin.vredefinition.client.view; import java.util.ArrayList; import java.util.List; import org.gcube.portlets.admin.vredefinition.client.AppController; import org.gcube.portlets.admin.vredefinition.client.model.VREFunctionalityModel; import org.gcube.portlets.admin.vredefinition.client.presenter.VREFinishWizardPresenter; import org.gcube.portlets.admin.vredefinition.shared.ExternalResourceModel; import org.gcube.portlets.admin.vredefinition.shared.VRECollectionBean; import org.gcube.portlets.admin.vredefinition.shared.VREDescriptionBean; import com.extjs.gxt.ui.client.Style.Scroll; import com.extjs.gxt.ui.client.Style.VerticalAlignment; import com.extjs.gxt.ui.client.data.ModelData; import com.extjs.gxt.ui.client.widget.Composite; import com.extjs.gxt.ui.client.widget.LayoutContainer; import com.extjs.gxt.ui.client.widget.VerticalPanel; import com.extjs.gxt.ui.client.widget.Viewport; import com.extjs.gxt.ui.client.widget.layout.FitLayout; import com.extjs.gxt.ui.client.widget.layout.MarginData; import com.extjs.gxt.ui.client.widget.layout.TableData; import com.extjs.gxt.ui.client.widget.treepanel.TreePanel; import com.google.gwt.i18n.client.DateTimeFormat; import com.google.gwt.user.client.ui.HTML; import com.google.gwt.user.client.ui.Widget; public class VREFinishWizardView extends Composite implements VREFinishWizardPresenter.Display{ public VREFinishWizardView(VREDescriptionBean vre, List categories) { VerticalPanel container = new VerticalPanel(); container.setScrollMode(Scroll.AUTO); container.setStyleAttribute("padding", "10px"); container.setTableWidth("100%"); TableData tableData = new TableData(); tableData.setVerticalAlign(VerticalAlignment.MIDDLE); //STYLE=\"font-size:18px;\" String vreDescription = "

Summary

"; vreDescription+="
Name: " + vre.getName() +"
"; vreDescription+="
VRE Designer: " + vre.getDesigner() +"
"; vreDescription+="
VRE Manager: " + vre.getManager() +"
"; DateTimeFormat fmt = DateTimeFormat.getFormat("MMMM dd, yyyy"); vreDescription+="
From: " + fmt.format(vre.getStartTime()) + " To: " + fmt.format(vre.getEndTime()) + "
"; vreDescription+= "
"; vreDescription+="
Description: " + vre.getDescription() +"
"; vreDescription += "
"; container.add(new HTML(vreDescription, true )); List functionalitiesSelected = new ArrayList(); for (ModelData category : categories) { for(ModelData func : ((VREFunctionalityModel)category).getChildren()) { if(((VREFunctionalityModel)func).isSelected()) functionalitiesSelected.add(func); } } int sizeFunctionalities = functionalitiesSelected.size(); String table = ""; table += ""; if (sizeFunctionalities > 0) { table += ""; table += ""; } table += ""; table += ""; table += ""; table += ""; int maxSize = Math.max(0, sizeFunctionalities); for(int i = 0; i < maxSize; i++) { table += ""; if (sizeFunctionalities > 0) { table += ""; } table += ""; } table += "
"; table += "

Functionalities

"; table += "
"; table += ""; table += "
"; ModelData functionality = null; if(i < sizeFunctionalities) { functionality = functionalitiesSelected.get(i); table +=" - " + functionality.get("name")+""; List extResources = AppController.getAppController().getExtResourcesFromApp(functionality.get("id").toString()); if (extResources != null) { table += "
"; for (ExternalResourceModel ext : extResources) { if (ext.isSelected()) { table += "" + ext.getName() + ""; table += "
"; } } table += "

"; } } table += "
"; container.add(new HTML(table, true)); initComponent(container); } @Override public Widget asWidget() { return this; } }