Commit 9d192d70 by Tuomas Riihimäki

Paikkavaraus fiksattu,

1 parent 300141b7
...@@ -2,13 +2,11 @@ ...@@ -2,13 +2,11 @@
<classpath> <classpath>
<classpathentry kind="src" path="src"/> <classpathentry kind="src" path="src"/>
<classpathentry combineaccessrules="false" exported="true" kind="src" path="/LanBortalAuthModuleClient"/> <classpathentry combineaccessrules="false" exported="true" kind="src" path="/LanBortalAuthModuleClient"/>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.sun.enterprise.jst.server.runtimeTarget/GlassFish v3 Java EE 6"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"> <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
<attributes> <attributes>
<attribute name="owner.project.facets" value="java"/> <attribute name="owner.project.facets" value="java"/>
</attributes> </attributes>
</classpathentry> </classpathentry>
<classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.sun.enterprise.jst.server.runtimeTarget/GlassFish Server Open Source Edition 3 (Java EE 6)"/> <classpathentry kind="con" path="org.eclipse.jst.server.core.container/com.sun.enterprise.jst.server.runtimeTarget/GlassFish Server Open Source Edition 3 (Java EE 6)"/>
<classpathentry kind="lib" path="/Users/jkj/Projects/Omnia/glassfish3/glassfish/lib/appserv-rt.jar"/>
<classpathentry kind="output" path="bin"/> <classpathentry kind="output" path="bin"/>
</classpath> </classpath>
...@@ -98,13 +98,16 @@ public class AccountEventBean implements AccountEventBeanLocal { ...@@ -98,13 +98,16 @@ public class AccountEventBean implements AccountEventBeanLocal {
} }
if (prodentry.getKey().isPrepaidInstant() && prodentry.getKey().getPlaces() != null && prodentry.getKey().getPlaces().size() > 0) { if (prodentry.getKey().isPrepaidInstant() && prodentry.getKey().getPlaces() != null && prodentry.getKey().getPlaces().size() > 0) {
for (Place p : prodentry.getKey().getPlaces()) { logger.debug("Prepaidplace");
if (!p.isTaken()) {
placebean.lockPlaceProduct(shoppingUser, prodentry.getKey(), BigDecimal.ONE);
placebean.lockPlaces(shoppingUser, p); // for (Place p : prodentry.getKey().getPlaces()) {
break; // if (!p.isTaken()) {
} // logger.debug("Locking user {} to place {}", shoppingUser,p);
} // placebean.lockPlaces(shoppingUser, p);
// break;
// }
// }
} }
ac.setSeller(seller); ac.setSeller(seller);
......
...@@ -199,7 +199,7 @@ public class BillBean implements BillBeanLocal { ...@@ -199,7 +199,7 @@ public class BillBean implements BillBeanLocal {
if (prod.isPrepaidInstant()) { if (prod.isPrepaidInstant()) {
logger.debug("Creating Bill prepaidInstant product {}, {}", prod.getName(), bl.getQuantity()); logger.debug("Creating Bill prepaidInstant product {}, {}", prod.getName(), bl.getQuantity());
if (prod.getPlaces().size() > 0) { if (prod.getPlaces().size() > 0) {
placebean.lockPlaces(bill.getUser(), prod, bl.getQuantity()); placebean.lockPlaceProduct(bill.getUser(), prod, bl.getQuantity());
} }
productBean.createAccountEvent(prod, bl.getQuantity(), bill.getUser()); productBean.createAccountEvent(prod, bl.getQuantity(), bill.getUser());
......
...@@ -210,27 +210,46 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -210,27 +210,46 @@ public class PlaceBean implements PlaceBeanLocal {
} }
@Override @Override
public void lockPlaces(User user, Product prod, BigDecimal quantity) { public void lockPlaceProduct(User user, Product prod, BigDecimal quantity) {
user = userbean.mergeChanges(user);
BigDecimal loop = BigDecimal.ZERO; BigDecimal loop = BigDecimal.ZERO;
LanEvent event = eventBean.getCurrentEvent(); LanEvent event = eventBean.getCurrentEvent();
PlaceGroup pg = new PlaceGroup(event, Calendar.getInstance(), Calendar.getInstance(), true); PlaceGroup pg = new PlaceGroup(event, Calendar.getInstance(), Calendar.getInstance(), true);
pg.setCreator(user); pg.setCreator(user);
pgfacade.create(pg);
for (Place p : prod.getPlaces()) { for (Place p : prod.getPlaces()) {
if (!p.isTaken()) { if (!p.isTaken()) {
p.reserve(user); // p.reserve(user);
p.buy(pg); p.buy(pg);
GroupMembership currgm = new GroupMembership(event, pg, p, gmemfacade.createInviteToken(event));
pg.getMembers().add(new GroupMembership(event, pg, p, gmemfacade.createInviteToken(event)));
placeFacade.merge(p); placeFacade.merge(p);
// pgbean.createGroupMembership(pg, p);
pg.getMembers().add(currgm);
loop = loop.add(BigDecimal.ONE); loop = loop.add(BigDecimal.ONE);
if (quantity.equals(BigDecimal.ONE)) {
boolean gmassoc = false;
for (GroupMembership gm : user.getGroupMemberships()) {
if (gm.getId().getEventId().equals(event.getId())) {
gmassoc = true;
break;
}
}
if (!gmassoc) {
user.getGroupMemberships().add(currgm);
currgm.setUser(user);
}
}
if (loop.compareTo(quantity) >= 0) { if (loop.compareTo(quantity) >= 0) {
break; break;
} }
} }
} }
pgfacade.create(pg);
} }
@Override @Override
...@@ -270,33 +289,42 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -270,33 +289,42 @@ public class PlaceBean implements PlaceBeanLocal {
logger.warn("Place {} is already taken", place); logger.warn("Place {} is already taken", place);
throw new PermissionDeniedException(secubean, userbean.getCurrentUser(), "NO RIGHT"); throw new PermissionDeniedException(secubean, userbean.getCurrentUser(), "NO RIGHT");
} }
userbean.fatalPermission(Permission.SHOP, RolePermission.EXECUTE, "User tried to lock place without SHOP:EXECUTE"); userbean.fatalPermission(Permission.SHOP, RolePermission.EXECUTE, "User tried to lock place without SHOP:EXECUTE");
LanEvent ev = eventBean.getCurrentEvent(); LanEvent ev = eventBean.getCurrentEvent();
PlaceGroup pg = new PlaceGroup(ev, Calendar.getInstance(), Calendar.getInstance(), true); PlaceGroup pg = new PlaceGroup(ev, Calendar.getInstance(), Calendar.getInstance(), true);
pg.setCreator(user); pg.setCreator(user);
user.getPlaceGroups().add(pg); user.getPlaceGroups().add(pg);
place.reserve(user); place.reserve(user);
place.buy(pg); place.buy(pg);
pg.getMembers().add(new GroupMembership(ev, pg, place, gmemfacade.createInviteToken(ev))); GroupMembership newgm = new GroupMembership(ev, pg, place, gmemfacade.createInviteToken(ev));
pg.getMembers().add(newgm);
boolean foundGm = false; boolean foundGm = false;
for (GroupMembership gm : user.getGroupMemberships()) { for (GroupMembership gm : user.getGroupMemberships()) {
logger.debug("Checking users gm:s found: {}", gm);
if (gm.getId().getEventId().equals(ev.getId())) { if (gm.getId().getEventId().equals(ev.getId())) {
foundGm = true; foundGm = true;
break; break;
} }
} }
logger.debug("Foundgm {}", foundGm);
if (!foundGm) { if (!foundGm) {
GroupMembership gm = pg.getMembers().get(0); logger.debug("Membership not found. associating");
gm.setUser(user); newgm.setUser(user);
user.getGroupMemberships().add(gm); user.getGroupMemberships().add(newgm);
// gmemfacade.merge(gm); userbean.mergeChanges(user);
} }
pgfacade.create(pg); pgfacade.create(pg);
place = placeFacade.merge(place);
// userbean.mergeChanges(user); return place;
return placeFacade.merge(place);
} }
} }
...@@ -165,7 +165,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -165,7 +165,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
public void releaseAndGenerateToken(GroupMembership gmem) { public void releaseAndGenerateToken(GroupMembership gmem) {
if (!userbean.getCurrentUser().equals(gmem.getPlaceGroup().getCreator()) || if (!userbean.getCurrentUser().getId().equals(gmem.getPlaceGroup().getCreator().getId()) ||
!userbean.hasCurrentUserPermission(Permission.MAP, RolePermission.WRITE)) { !userbean.hasCurrentUserPermission(Permission.MAP, RolePermission.WRITE)) {
throw new PermissionDeniedException(secubean, userbean.getCurrentUser(), "User tried to release and generate group membership: " + gmem); throw new PermissionDeniedException(secubean, userbean.getCurrentUser(), "User tried to release and generate group membership: " + gmem);
} }
......
...@@ -21,7 +21,7 @@ import fi.insomnia.bortal.model.User; ...@@ -21,7 +21,7 @@ import fi.insomnia.bortal.model.User;
* @author tuukka * @author tuukka
*/ */
@Local @Local
//@RemoteDestination // @RemoteDestination
public interface PlaceBeanLocal { public interface PlaceBeanLocal {
Place mergeChanges(Place place); Place mergeChanges(Place place);
...@@ -38,8 +38,6 @@ public interface PlaceBeanLocal { ...@@ -38,8 +38,6 @@ public interface PlaceBeanLocal {
boolean buySelectedPlaces(EventMap e) throws BortalCatchableException; boolean buySelectedPlaces(EventMap e) throws BortalCatchableException;
void lockPlaces(User user, Product prod, BigDecimal quantity);
int setBuyable(EventMap map, String buyableLike, boolean b); int setBuyable(EventMap map, String buyableLike, boolean b);
Place find(EventPk id); Place find(EventPk id);
...@@ -48,4 +46,6 @@ public interface PlaceBeanLocal { ...@@ -48,4 +46,6 @@ public interface PlaceBeanLocal {
Place lockPlaces(User rowData, Place place); Place lockPlaces(User rowData, Place place);
void lockPlaceProduct(User user, Product prod, BigDecimal quantity);
} }
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
*/ */
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.List; import java.util.List;
...@@ -70,7 +71,7 @@ public class PlaceGroup implements EventChildInterface { ...@@ -70,7 +71,7 @@ public class PlaceGroup implements EventChildInterface {
private User creator; private User creator;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "placeGroup") @OneToMany(cascade = CascadeType.ALL, mappedBy = "placeGroup")
private List<GroupMembership> members; private List<GroupMembership> members = new ArrayList<GroupMembership>();
@OneToMany(mappedBy = "group") @OneToMany(mappedBy = "group")
@OrderBy("name") @OrderBy("name")
......
...@@ -4,6 +4,8 @@ ...@@ -4,6 +4,8 @@
*/ */
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import java.util.List;
import javax.persistence.Column; import javax.persistence.Column;
import javax.persistence.EmbeddedId; import javax.persistence.EmbeddedId;
import javax.persistence.Entity; import javax.persistence.Entity;
...@@ -13,6 +15,7 @@ import javax.persistence.Lob; ...@@ -13,6 +15,7 @@ import javax.persistence.Lob;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries; import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery; import javax.persistence.NamedQuery;
import javax.persistence.OneToMany;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Version; import javax.persistence.Version;
import javax.persistence.UniqueConstraint; import javax.persistence.UniqueConstraint;
...@@ -33,11 +36,14 @@ public class Reader extends GenericEventChild { ...@@ -33,11 +36,14 @@ public class Reader extends GenericEventChild {
super(); super();
} }
public Reader(LanEvent ev, String iden) { public Reader(LanEvent ev, String ident) {
super(ev); super(ev);
this.identification = ident;
} }
private Integer gamepoints;
private Integer maxEvents;
/** /**
* *
*/ */
...@@ -71,6 +77,9 @@ public class Reader extends GenericEventChild { ...@@ -71,6 +77,9 @@ public class Reader extends GenericEventChild {
@Column(name = "map_y") @Column(name = "map_y")
private Integer mapY; private Integer mapY;
@OneToMany(mappedBy = "reader")
private List<ReaderEvent> events;
public String getIdentification() { public String getIdentification() {
return identification; return identification;
} }
...@@ -148,4 +157,28 @@ public class Reader extends GenericEventChild { ...@@ -148,4 +157,28 @@ public class Reader extends GenericEventChild {
public LanEvent getEvent() { public LanEvent getEvent() {
return event; return event;
} }
public void setGamepoints(Integer gamepoints) {
this.gamepoints = gamepoints;
}
public Integer getGamepoints() {
return gamepoints;
}
public void setMaxEvents(Integer maxEvents) {
this.maxEvents = maxEvents;
}
public Integer getMaxEvents() {
return maxEvents;
}
public void setEvents(List<ReaderEvent> events) {
this.events = events;
}
public List<ReaderEvent> getEvents() {
return events;
}
} }
...@@ -40,6 +40,8 @@ public class ReaderEvent extends GenericEventChild { ...@@ -40,6 +40,8 @@ public class ReaderEvent extends GenericEventChild {
@Column(name = "value") @Column(name = "value")
private String value; private String value;
private Integer gaepoint;
@JoinColumns({ @JoinColumns({
@JoinColumn(name = "printed_cards_id", referencedColumnName = "id", nullable = false, updatable = false), @JoinColumn(name = "printed_cards_id", referencedColumnName = "id", nullable = false, updatable = false),
@JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) }) @JoinColumn(name = "event_id", referencedColumnName = "event_id", nullable = false, updatable = false, insertable = false) })
......
...@@ -5,11 +5,12 @@ import javax.annotation.Generated; ...@@ -5,11 +5,12 @@ import javax.annotation.Generated;
import javax.persistence.metamodel.SingularAttribute; import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel; import javax.persistence.metamodel.StaticMetamodel;
@Generated(value="Dali", date="2010-10-28T16:55:25.053+0300") @Generated(value="Dali", date="2010-10-28T21:00:17.154+0300")
@StaticMetamodel(ReaderEvent.class) @StaticMetamodel(ReaderEvent.class)
public class ReaderEvent_ extends GenericEventChild_ { public class ReaderEvent_ extends GenericEventChild_ {
public static volatile SingularAttribute<ReaderEvent, Calendar> time; public static volatile SingularAttribute<ReaderEvent, Calendar> time;
public static volatile SingularAttribute<ReaderEvent, String> value; public static volatile SingularAttribute<ReaderEvent, String> value;
public static volatile SingularAttribute<ReaderEvent, Integer> gaepoint;
public static volatile SingularAttribute<ReaderEvent, PrintedCard> printedCard; public static volatile SingularAttribute<ReaderEvent, PrintedCard> printedCard;
public static volatile SingularAttribute<ReaderEvent, Reader> reader; public static volatile SingularAttribute<ReaderEvent, Reader> reader;
} }
package fi.insomnia.bortal.model; package fi.insomnia.bortal.model;
import javax.annotation.Generated; import javax.annotation.Generated;
import javax.persistence.metamodel.ListAttribute;
import javax.persistence.metamodel.SingularAttribute; import javax.persistence.metamodel.SingularAttribute;
import javax.persistence.metamodel.StaticMetamodel; import javax.persistence.metamodel.StaticMetamodel;
@Generated(value="Dali", date="2010-10-28T16:55:25.036+0300") @Generated(value="Dali", date="2010-10-28T21:00:17.122+0300")
@StaticMetamodel(Reader.class) @StaticMetamodel(Reader.class)
public class Reader_ extends GenericEventChild_ { public class Reader_ extends GenericEventChild_ {
public static volatile SingularAttribute<Reader, Integer> gamepoints;
public static volatile SingularAttribute<Reader, Integer> maxEvents;
public static volatile SingularAttribute<Reader, String> identification; public static volatile SingularAttribute<Reader, String> identification;
public static volatile SingularAttribute<Reader, String> description; public static volatile SingularAttribute<Reader, String> description;
public static volatile SingularAttribute<Reader, Location> location; public static volatile SingularAttribute<Reader, Location> location;
...@@ -14,4 +17,5 @@ public class Reader_ extends GenericEventChild_ { ...@@ -14,4 +17,5 @@ public class Reader_ extends GenericEventChild_ {
public static volatile SingularAttribute<Reader, LanEvent> event; public static volatile SingularAttribute<Reader, LanEvent> event;
public static volatile SingularAttribute<Reader, Integer> mapX; public static volatile SingularAttribute<Reader, Integer> mapX;
public static volatile SingularAttribute<Reader, Integer> mapY; public static volatile SingularAttribute<Reader, Integer> mapY;
public static volatile ListAttribute<Reader, ReaderEvent> events;
} }
...@@ -12,8 +12,10 @@ ...@@ -12,8 +12,10 @@
<ui:define name="content"> <ui:define name="content">
#{productShopView.initUsershoppable()} #{productShopView.initUsershoppable()}
<h:form id="billshopform">
<products:shop commitaction="#{productShopView.commitBillCart()}" items="#{productShopView.billCart}" <products:shop commitaction="#{productShopView.commitBillCart()}" items="#{productShopView.billCart}"
commitValue="#{i18n['productshop.commit']}" /> commitValue="#{i18n['productshop.commit']}" />
</h:form>
</ui:define> </ui:define>
</ui:composition> </ui:composition>
</h:body> </h:body>
......
...@@ -16,7 +16,7 @@ ...@@ -16,7 +16,7 @@
<h:outputScript target="head" library="script" name="jquery.min.js" /> <h:outputScript target="head" library="script" name="jquery.min.js" />
<h:outputScript target="head" library="script" name="shopscript.js" /> <h:outputScript target="head" library="script" name="shopscript.js" />
<h:form id="shopform">
<h:dataTable border="0" id="billcart" value="#{cc.attrs.items}" var="cart"> <h:dataTable border="0" id="billcart" value="#{cc.attrs.items}" var="cart">
<h:column> <h:column>
<f:facet name="header"> <f:facet name="header">
...@@ -48,7 +48,6 @@ ...@@ -48,7 +48,6 @@
</h:dataTable> </h:dataTable>
<h:commandButton action="#{cc.attrs.commitaction}" id="commitbutton" value="#{cc.attrs.commitValue}" /> <h:commandButton action="#{cc.attrs.commitaction}" id="commitbutton" value="#{cc.attrs.commitValue}" />
</h:form>
......
...@@ -18,16 +18,16 @@ ...@@ -18,16 +18,16 @@
<h:outputText value="#{productShopView.shoppingUser.accountBalance}"> <h:outputText value="#{productShopView.shoppingUser.accountBalance}">
<f:convertNumber /> <f:convertNumber />
</h:outputText> </h:outputText>
<h:outputText value="#{i18n['product.shopInstant']}" />
<h:selectBooleanCheckbox value="#{productShopView.payInstant}" />
</h:panelGrid> </h:panelGrid>
<h:form id="shoppingcartform">
<h:outputText value="#{i18n['product.shopInstant']}" />
<h:selectBooleanCheckbox value="#{productShopView.payInstant}" />
<products:shop commitaction="#{productShopView.commitShoppingCart()}" items="#{productShopView.billCart}" <products:shop commitaction="#{productShopView.commitShoppingCart()}" items="#{productShopView.billCart}"
commitValue="#{i18n['productshop.commit']}" /> commitValue="#{i18n['productshop.commit']}" />
</h:form>
</ui:define> </ui:define>
......
...@@ -19,13 +19,23 @@ ...@@ -19,13 +19,23 @@
</h:panelGrid> </h:panelGrid>
<users:sendImage /> <users:sendImage />
<h:dataTable border="1" id="user" value="#{userView.user.userImageList}" var="img"> #{userView.initUserimagelist()}
<h:dataTable border="1" id="user" value="#{userView.userImageList}" var="img">
<h:column> <h:column>
<h:outputText value="#{img.name}" /> <h:outputText value="#{img.name}" />
</h:column> </h:column>
<h:column> <h:column>
<h:outputText value="#{img.mimeType}" /> <h:outputText value="#{img.mimeType}" />
</h:column> </h:column>
<h:column>
<a href="#"
onclick="window.open('#{request.contextPath}/Userimage?imageid=#{img.id}', 'imagesubmitpopup', 'height=240,width=320'); this.target='imagesubmitpopup'; return true; ">
Näytä kuva
</a>
</h:column>
<h:column>
<h:commandButton action="#{userView.setDefaultImage()}" value="Set default image" />
</h:column>
</h:dataTable> </h:dataTable>
......
...@@ -28,6 +28,13 @@ ...@@ -28,6 +28,13 @@
<h:dataTable border="1" id="placegroup" value="#{userView.placegroups}" var="placegroup"> <h:dataTable border="1" id="placegroup" value="#{userView.placegroups}" var="placegroup">
<h:column> <h:column>
<f:facet name="header"> <f:facet name="header">
<h:outputText value="ID" />
</f:facet>
<h:outputText value="#{placegroup.id.id}" />
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="#{i18n['placegroup.name']}" /> <h:outputText value="#{i18n['placegroup.name']}" />
</f:facet> </f:facet>
<h:outputText value="#{placegroup.name}" /> <h:outputText value="#{placegroup.name}" />
...@@ -69,6 +76,9 @@ ...@@ -69,6 +76,9 @@
<h:column> <h:column>
<h:outputText value="#{place.name}" /> <h:outputText value="#{place.name}" />
</h:column> </h:column>
<h:column>
<h:outputText rendered="#{! empty place.placeReserver}" value="#{place.placeReserver.user.nick}" />
</h:column>
</h:dataTable> </h:dataTable>
</h:column> </h:column>
<h:column> <h:column>
......
...@@ -38,7 +38,7 @@ import fi.insomnia.bortal.view.helpers.ProductShopItem; ...@@ -38,7 +38,7 @@ import fi.insomnia.bortal.view.helpers.ProductShopItem;
@ManagedBean(name = "productShopView") @ManagedBean(name = "productShopView")
@SessionScoped @SessionScoped
public class ProductShopView { public class ProductShopView extends GenericView {
private static final Logger logger = LoggerFactory.getLogger(ProductShopView.class); private static final Logger logger = LoggerFactory.getLogger(ProductShopView.class);
@EJB @EJB
...@@ -107,6 +107,7 @@ public class ProductShopView { ...@@ -107,6 +107,7 @@ public class ProductShopView {
while (cartIter.hasNext()) { while (cartIter.hasNext()) {
ProductShopItem shopitem = cartIter.next(); ProductShopItem shopitem = cartIter.next();
if (shopitem.getCount().compareTo(BigDecimal.ZERO) > 0) { if (shopitem.getCount().compareTo(BigDecimal.ZERO) > 0) {
if (shopMap.containsKey(shopitem.getProduct())) { if (shopMap.containsKey(shopitem.getProduct())) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(I18n.get("productshop.productFoundTwice"))); FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(I18n.get("productshop.productFoundTwice")));
return null; return null;
...@@ -116,12 +117,12 @@ public class ProductShopView { ...@@ -116,12 +117,12 @@ public class ProductShopView {
} }
List<AccountEvent> executed = accountEventBean.shopCash(shoppingUser, shopMap, isPayInstant()); List<AccountEvent> executed = accountEventBean.shopCash(shoppingUser, shopMap, isPayInstant());
this.addFaceMessage("Tuotteet ostettu");
return "success"; return "success";
} }
public void initUsershoppable() { public void initUsershoppable() {
setPayInstant(true); setPayInstant(false);
logger.debug("Creating new BillCart"); logger.debug("Creating new BillCart");
userBean.fatalPermission(Permission.BILL, RolePermission.EXECUTE); userBean.fatalPermission(Permission.BILL, RolePermission.EXECUTE);
......
...@@ -27,6 +27,7 @@ import fi.insomnia.bortal.model.GroupMembership; ...@@ -27,6 +27,7 @@ import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.model.UserImage;
import fi.insomnia.bortal.utilities.I18n; import fi.insomnia.bortal.utilities.I18n;
@ManagedBean(name = "userView") @ManagedBean(name = "userView")
...@@ -53,6 +54,7 @@ public class UserView extends GenericView { ...@@ -53,6 +54,7 @@ public class UserView extends GenericView {
private String passwordcheck; private String passwordcheck;
@EJB @EJB
private UtilBeanLocal utilbean; private UtilBeanLocal utilbean;
private ListDataModel<UserImage> userImageList;
public void initCreateuser() { public void initCreateuser() {
user = new User(); user = new User();
...@@ -65,6 +67,12 @@ public class UserView extends GenericView { ...@@ -65,6 +67,12 @@ public class UserView extends GenericView {
} }
public String setDefaultImage()
{
user.setCurrentImage(userImageList.getRowData());
userBean.mergeChanges(user);
return null;
}
public String edit() { public String edit() {
userBean.fatalPermission(Permission.USER_MANAGEMENT, RolePermission.READ); userBean.fatalPermission(Permission.USER_MANAGEMENT, RolePermission.READ);
...@@ -154,6 +162,10 @@ public class UserView extends GenericView { ...@@ -154,6 +162,10 @@ public class UserView extends GenericView {
} }
return ret; return ret;
} }
public void initUserimagelist()
{
setUserImageList(new ListDataModel<UserImage>(user.getUserImageList()));
}
public String saveUser() { public String saveUser() {
...@@ -256,4 +268,12 @@ public class UserView extends GenericView { ...@@ -256,4 +268,12 @@ public class UserView extends GenericView {
return shopview; return shopview;
} }
public void setUserImageList(ListDataModel<UserImage> userImageList) {
this.userImageList = userImageList;
}
public ListDataModel<UserImage> getUserImageList() {
return userImageList;
}
} }
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!