Commit 45ef301c by Tuomas Riihimäki

Merge branch 'master' of codecrew.fi:bortal

2 parents 73158b8a ee917ef4
......@@ -2,7 +2,7 @@
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/core"
xmlns:products="http://java.sun.com/jsf/composite/cditools/products" xmlns:users="http://java.sun.com/jsf/composite/cditools/user" xmlns:c="http://java.sun.com/jsp/jstl/core">
xmlns:products="http://java.sun.com/jsf/composite/cditools/products" xmlns:users="http://java.sun.com/jsf/composite/cditools/user" xmlns:c="http://java.sun.com/jsp/jstl/core" xmlns:p="http://primefaces.org/ui">
<h:body>
<ui:composition template="/layout/#{sessionHandler.layout}/template.xhtml">
<f:metadata>
......@@ -15,12 +15,47 @@
<ui:define name="content">
<h:form>
<h:panelGrid columns="3">
<h:outputLabel for="name" value="#{i18n['foodwavetemplate.name']}" />
<h:inputText id="name" value="#{foodWaveView.template.name}" />
<h:message for="name" />
</h:panelGrid>
<h:commandButton action="#{foodWaveView.saveTemplate()}" value="#{i18n['foowavetemplate.create']}" />
<p:wizard>
<p:tab id="basicinfo" title="#{i18n['foodwavetemplate.basicinfo']}">
<h:panelGrid columns="3">
<h:outputLabel for="name" value="#{i18n['foodwavetemplate.name']}" />
<h:inputText id="name" value="#{foodWaveView.template.name}" />
<h:message for="name" />
<h:outputLabel for="description" value="#{i18n['foodwavetemplate.description']}" />
<h:inputText id="description" value="#{foodWaveView.template.description}" />
<h:message for="description" />
</h:panelGrid>
</p:tab>
<p:tab id="selectproducts" title="#{i18n['foodwavetemplate.selectproducts']}">
<h:messages />
<h:panelGrid columns="4">
<h:outputText value="#{i18n['foodwavetemplate.productname']}" />
<h:outputText value="#{i18n['foodwavetemplate.productdescription']}" />
<h:outputText value="#{i18n['foodwavetemplate.price']}" />
<h:outputText value="&nbsp;" />
<h:inputText id="productname" value="#{foodWaveView.currentProduct.name}" />
<h:inputText id="productdescription" value="#{foodWaveView.currentProduct.name}" />
<h:inputText id="price" value="#{foodWaveView.currentProduct.price}" />
<p:commandButton value="#{i18n['foodwavetemplate.addproduct']}" actionListener="#{foodWaveView.addProductToTemplate}" update="productTable" />
</h:panelGrid>
<p:dataTable name="productTable" id="productTable" value="#{foodWaveView.template.products}" var="product">
<p:column headerText="#{i18n['foodwavetemplate.productname']}">
<h:outputText value="#{product.name}" />
</p:column>
<p:column headerText="#{i18n['foodwavetemplate.productdescription']}">
<h:outputText value="#{product.name}" />
</p:column>
<p:column headerText="#{i18n['foodwavetemplate.price']}">
<h:outputText value="#{product.price}" />
</p:column>
</p:dataTable>
</p:tab>
</p:wizard>
</h:form>
......
package fi.insomnia.bortal.web.cdiview.shop;
import java.util.ArrayList;
import java.util.TreeSet;
import java.util.Vector;
import javax.ejb.EJB;
import javax.enterprise.context.ConversationScoped;
import javax.faces.model.ListDataModel;
......@@ -11,6 +15,8 @@ import fi.insomnia.bortal.beans.FoodWaveBeanLocal;
import fi.insomnia.bortal.enums.apps.ShopPermission;
import fi.insomnia.bortal.model.FoodWave;
import fi.insomnia.bortal.model.FoodWaveTemplate;
import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.ProductFlag;
import fi.insomnia.bortal.web.cdiview.GenericCDIView;
@Named
......@@ -33,6 +39,8 @@ public class FoodWaveView extends GenericCDIView {
private ListDataModel<FoodWave> foodWaves;
private FoodWave selectedFoodWave = null;
private Product currentProduct;
public void initTemplateList() {
if (super.requirePermissions(ShopPermission.LIST_USERPRODUCTS)) {
......@@ -59,10 +67,35 @@ public class FoodWaveView extends GenericCDIView {
if (super.requirePermissions(ShopPermission.MANAGE_PRODUCTS) && template == null)
{
template = new FoodWaveTemplate();
template.setProducts(new ArrayList<Product>());
template.setEvent(eventbean.getCurrentEvent());
createNewProductSkeleton();
super.beginConversation();
}
}
private void createNewProductSkeleton() {
TreeSet<ProductFlag> ts = new TreeSet<ProductFlag>();
ts.add(ProductFlag.PREPAID_INSTANT_CREATE);
currentProduct = new Product();
currentProduct.setProductFlags(ts);
}
public void addProductToTemplate() {
template.getProducts().add(currentProduct);
createNewProductSkeleton();
}
public Product getCurrentProduct() {
return currentProduct;
}
public void setCurrentProduct(Product currentProduct) {
this.currentProduct = currentProduct;
}
public void initUserFoodWaveList() {
this.foodWaves = new ListDataModel<FoodWave>(
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!