Commit 6645ef86 by Juho Juopperi

Merge branch 'eventuser'

Conflicts:
	code/LanBortalBeans/ejbModule/fi/insomnia/bortal/beans/PermissionBean.java
2 parents f7eed6bc 7adfcabf
Showing with 1266 additions and 377 deletions
...@@ -21,6 +21,8 @@ import fi.insomnia.bortal.enums.apps.SpecialPermission; ...@@ -21,6 +21,8 @@ import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.AccountEventFacade; import fi.insomnia.bortal.facade.AccountEventFacade;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -81,7 +83,7 @@ public class AccountEventBean implements AccountEventBeanLocal { ...@@ -81,7 +83,7 @@ public class AccountEventBean implements AccountEventBeanLocal {
} }
@Override @Override
public List<Role> getRolesFromAccountEvents(User u) { public List<Role> getRolesFromAccountEvents(IUser u) {
return accountfacade.findProvidedRoles(eventBean.getCurrentEvent(), u); return accountfacade.findProvidedRoles(eventBean.getCurrentEvent(), u);
} }
...@@ -90,10 +92,10 @@ public class AccountEventBean implements AccountEventBeanLocal { ...@@ -90,10 +92,10 @@ public class AccountEventBean implements AccountEventBeanLocal {
*/ */
@Override @Override
@RolesAllowed(ShopPermission.S_SHOP_PRODUCTS) @RolesAllowed(ShopPermission.S_SHOP_PRODUCTS)
public void shopCash(User shoppingUser, Map<Product, BigDecimal> shopMap, boolean buyInstant) { public void shopCash(EventUser shoppingUser, Map<Product, BigDecimal> shopMap, boolean buyInstant) {
logger.debug("Shoping cash. buyinstant {}", buyInstant); logger.debug("Shoping cash. buyinstant {}", buyInstant);
User seller = permbean.getCurrentUser(); EventUser seller = permbean.getCurrentUser();
shoppingUser = userbean.findById(shoppingUser.getId()); shoppingUser = userbean.findEventUserById(shoppingUser.getId());
BigDecimal tot = BigDecimal.ZERO; BigDecimal tot = BigDecimal.ZERO;
...@@ -125,13 +127,13 @@ public class AccountEventBean implements AccountEventBeanLocal { ...@@ -125,13 +127,13 @@ public class AccountEventBean implements AccountEventBeanLocal {
accountfacade.create(ac); accountfacade.create(ac);
} }
userbean.mergeChanges(shoppingUser); userbean.mergeEventUserChanges(shoppingUser);
} }
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public BigDecimal getAccountBalance(User user) { public BigDecimal getAccountBalance(IUser user) {
if (user == null) { if (user == null) {
user = permbean.getCurrentUser(); user = permbean.getCurrentUser();
} }
...@@ -153,7 +155,7 @@ public class AccountEventBean implements AccountEventBeanLocal { ...@@ -153,7 +155,7 @@ public class AccountEventBean implements AccountEventBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public List<AccountEvent> getAccountEvents(User user) { public List<AccountEvent> getAccountEvents(IUser user) {
if (user == null) { if (user == null) {
user = permbean.getCurrentUser(); user = permbean.getCurrentUser();
} }
......
...@@ -21,13 +21,12 @@ import fi.insomnia.bortal.enums.apps.BillPermission; ...@@ -21,13 +21,12 @@ import fi.insomnia.bortal.enums.apps.BillPermission;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.facade.BillFacade; import fi.insomnia.bortal.facade.BillFacade;
import fi.insomnia.bortal.facade.BillLineFacade; import fi.insomnia.bortal.facade.BillLineFacade;
import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.BillLine; import fi.insomnia.bortal.model.BillLine;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.util.MailMessage; import fi.insomnia.bortal.util.MailMessage;
import fi.insomnia.bortal.utilities.I18n; import fi.insomnia.bortal.utilities.I18n;
...@@ -63,10 +62,6 @@ public class BillBean implements BillBeanLocal { ...@@ -63,10 +62,6 @@ public class BillBean implements BillBeanLocal {
private PlaceBean placebean; private PlaceBean placebean;
@EJB @EJB
private PermissionBeanLocal permissionbean;
@EJB
private UserFacade userfacade;
@EJB
private UtilBean utilbean; private UtilBean utilbean;
@EJB @EJB
...@@ -86,7 +81,7 @@ public class BillBean implements BillBeanLocal { ...@@ -86,7 +81,7 @@ public class BillBean implements BillBeanLocal {
return null; return null;
} }
Bill bill = billFacade.find(id); Bill bill = billFacade.find(id);
User currentuser = permbean.getCurrentUser(); IUser currentuser = permbean.getCurrentUser();
logger.debug("bill {} user {}", bill, currentuser); logger.debug("bill {} user {}", bill, currentuser);
if (bill != null && !currentuser.equals(bill.getUser()) && !permbean.hasPermission(BillPermission.READ_ALL)) { if (bill != null && !currentuser.equals(bill.getUser()) && !permbean.hasPermission(BillPermission.READ_ALL)) {
...@@ -255,7 +250,7 @@ public class BillBean implements BillBeanLocal { ...@@ -255,7 +250,7 @@ public class BillBean implements BillBeanLocal {
@Override @Override
@RolesAllowed({ BillPermission.S_VIEW_OWN, BillPermission.S_READ_ALL }) @RolesAllowed({ BillPermission.S_VIEW_OWN, BillPermission.S_READ_ALL })
public List<Bill> find(User user) { public List<Bill> find(IUser user) {
if (!permbean.isCurrentUser(user) && !permbean.hasPermission(BillPermission.READ_ALL)) { if (!permbean.isCurrentUser(user) && !permbean.hasPermission(BillPermission.READ_ALL)) {
loggingBean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "Not enought rights to get bill list for user "); loggingBean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "Not enought rights to get bill list for user ");
throw new EJBAccessException("Could not list bills for another user"); throw new EJBAccessException("Could not list bills for another user");
......
...@@ -18,9 +18,12 @@ import org.slf4j.LoggerFactory; ...@@ -18,9 +18,12 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.CardTemplateFacade; import fi.insomnia.bortal.facade.CardTemplateFacade;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.PrintedCardFacade; import fi.insomnia.bortal.facade.PrintedCardFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.CardTemplate; import fi.insomnia.bortal.model.CardTemplate;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
...@@ -56,7 +59,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -56,7 +59,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
private UtilBeanLocal mailbean; private UtilBeanLocal mailbean;
@EJB @EJB
private UserFacade userfacade; private EventUserFacade eventUserFacade;
@EJB @EJB
private UserBeanLocal userbean; private UserBeanLocal userbean;
...@@ -88,7 +91,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -88,7 +91,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
@Override @Override
public void checkAllUsersCardRights() { public void checkAllUsersCardRights() {
for (User u : userbean.getUsers()) { for (EventUser u : eventUserFacade.findAll()) {
checkPrintedCard(u); checkPrintedCard(u);
} }
} }
...@@ -99,10 +102,10 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -99,10 +102,10 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
* @throws PermissionDeniedException * @throws PermissionDeniedException
*/ */
@Override @Override
public PrintedCard checkPrintedCard(User user) { public PrintedCard checkPrintedCard(EventUser user) {
logger.info("Checking printed card"); logger.info("Checking printed card");
user = userfacade.find(user.getId()); user = eventUserFacade.find(user.getId());
LanEvent currEvent = eventBean.getCurrentEvent(); LanEvent currEvent = eventBean.getCurrentEvent();
List<PrintedCard> myCards = printedcardfacade.getCards(user); List<PrintedCard> myCards = printedcardfacade.getCards(user);
...@@ -149,7 +152,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -149,7 +152,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
logger.info("User {} has too little power old role {} New role {}", new Object[] { user.getLogin(), existingPower, newPower }); logger.info("User {} has too little power old role {} New role {}", new Object[] { user.getLogin(), existingPower, newPower });
} else if (existingPower > newPower) { } else if (existingPower > newPower) {
MailMessage msg = new MailMessage(); MailMessage msg = new MailMessage();
User admin = eventBean.getCurrentEvent().getOrganiser().getAdmin(); IUser admin = eventBean.getCurrentEvent().getOrganiser().getAdmin();
String adminmail = admin.getEmail(); String adminmail = admin.getEmail();
msg.setFromAddress(adminmail); msg.setFromAddress(adminmail);
...@@ -168,7 +171,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -168,7 +171,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
} }
@RolesAllowed(UserPermission.S_WRITE_ROLES) @RolesAllowed(UserPermission.S_WRITE_ROLES)
public CardTemplate getUsersCardtype(User user) { public CardTemplate getUsersCardtype(EventUser user) {
List<Role> roles = userbean.findUsersRoles(user); List<Role> roles = userbean.findUsersRoles(user);
CardTemplate greatestTemplate = null; CardTemplate greatestTemplate = null;
...@@ -184,7 +187,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -184,7 +187,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
} }
@Override @Override
public PrintedCard setRfidUid(String tag, User user) { public PrintedCard setRfidUid(String tag, EventUser user) {
PrintedCard ct = checkPrintedCard(user); PrintedCard ct = checkPrintedCard(user);
return setRfidUid(tag, ct); return setRfidUid(tag, ct);
} }
...@@ -214,7 +217,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal { ...@@ -214,7 +217,7 @@ public class CardTemplateBean implements CardTemplateBeanLocal {
} }
@Override @Override
public List<PrintedCard> getCards(User user) { public List<PrintedCard> getCards(EventUser user) {
return printedcardfacade.getCards(user); return printedcardfacade.getCards(user);
} }
......
...@@ -17,11 +17,11 @@ import fi.insomnia.bortal.facade.EventOrganiserFacade; ...@@ -17,11 +17,11 @@ import fi.insomnia.bortal.facade.EventOrganiserFacade;
import fi.insomnia.bortal.facade.LanEventDomainFacade; import fi.insomnia.bortal.facade.LanEventDomainFacade;
import fi.insomnia.bortal.facade.LanEventPropertyFacade; import fi.insomnia.bortal.facade.LanEventPropertyFacade;
import fi.insomnia.bortal.model.EventOrganiser; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.LanEventDomain; import fi.insomnia.bortal.model.LanEventDomain;
import fi.insomnia.bortal.model.LanEventProperty; import fi.insomnia.bortal.model.LanEventProperty;
import fi.insomnia.bortal.model.LanEventPropertyKey; import fi.insomnia.bortal.model.LanEventPropertyKey;
import fi.insomnia.bortal.model.User;
/** /**
* Session Bean implementation class EventBean * Session Bean implementation class EventBean
...@@ -82,7 +82,7 @@ public class EventBean implements EventBeanLocal { ...@@ -82,7 +82,7 @@ public class EventBean implements EventBeanLocal {
settings = new EventOrganiser(); settings = new EventOrganiser();
settings.setOrganisation(DEFAULT_ORGANISATION_NAME); settings.setOrganisation(DEFAULT_ORGANISATION_NAME);
User defaultUser = permbean.getAnonUser(); EventUser defaultUser = permbean.getAnonEventUser();
settings.setAdmin(defaultUser); settings.setAdmin(defaultUser);
eventOrganiserFacade.create(settings); eventOrganiserFacade.create(settings);
} }
......
...@@ -11,8 +11,8 @@ import fi.insomnia.bortal.enums.apps.SpecialPermission; ...@@ -11,8 +11,8 @@ import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.facade.EventFacade; import fi.insomnia.bortal.facade.EventFacade;
import fi.insomnia.bortal.facade.EventOrganiserFacade; import fi.insomnia.bortal.facade.EventOrganiserFacade;
import fi.insomnia.bortal.model.EventOrganiser; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.User;
/** /**
* Session Bean implementation class EventOrganiserBean * Session Bean implementation class EventOrganiserBean
...@@ -71,7 +71,7 @@ public class EventOrganiserBean implements EventOrganiserBeanLocal { ...@@ -71,7 +71,7 @@ public class EventOrganiserBean implements EventOrganiserBeanLocal {
} }
@Override @Override
public List<EventOrganiser> getOrganisations(User user) { public List<EventOrganiser> getOrganisations(IUser user) {
return eventorgfacade.find(user); return eventorgfacade.find(user);
} }
} }
...@@ -15,8 +15,10 @@ import fi.insomnia.bortal.enums.BortalApplication; ...@@ -15,8 +15,10 @@ import fi.insomnia.bortal.enums.BortalApplication;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.ApplicationPermission; import fi.insomnia.bortal.model.ApplicationPermission;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -28,10 +30,14 @@ import fi.insomnia.bortal.model.User; ...@@ -28,10 +30,14 @@ import fi.insomnia.bortal.model.User;
public class JaasBean implements JaasBeanLocal, JaasBeanRemote { public class JaasBean implements JaasBeanLocal, JaasBeanRemote {
private static final Logger logger = LoggerFactory.getLogger(JaasBean.class); private static final Logger logger = LoggerFactory.getLogger(JaasBean.class);
@EJB @EJB
private UserFacade userfacade; private UserFacade userfacade;
@EJB @EJB
private EventUserFacade eventUserFacade;
@EJB
private LoggingBeanLocal secubean; private LoggingBeanLocal secubean;
@EJB @EJB
...@@ -41,21 +47,32 @@ public class JaasBean implements JaasBeanLocal, JaasBeanRemote { ...@@ -41,21 +47,32 @@ public class JaasBean implements JaasBeanLocal, JaasBeanRemote {
@EJB @EJB
private EventBeanLocal eventbean; private EventBeanLocal eventbean;
public User tryLogin(String username, String password) { public EventUser tryLogin(String username, String password) {
EventUser eventUser = eventUserFacade.findByLogin(username.trim());
User user = userfacade.findByLogin(username.trim()); // Might not have EventUser
User ret = null; if (eventUser == null) {
if (user != null) { User user = userfacade.findByLogin(username.trim());
if (user.isAnonymous()) {
if (user != null) {
eventUser = new EventUser(user, eventbean.getCurrentEvent());
eventUserFacade.merge(eventUser);
}
}
EventUser ret = null;
if (eventUser != null) {
if (eventUser.isAnonymous()) {
logger.info("logging in as anonymous!!!"); logger.info("logging in as anonymous!!!");
ret = user; ret = eventUser;
} else if (user.checkPassword(password)) { } else if (eventUser.checkPassword(password)) {
ret = user; ret = eventUser;
} else { } else {
secubean.logMessage(SecurityLogType.permissionDenied, user, "Login failed: wrong password for username ", username); secubean.logMessage(SecurityLogType.permissionDenied, eventUser.getUser(), "Login failed: wrong password for username ", username);
} }
} else { } else {
secubean.logMessage(SecurityLogType.permissionDenied, null, "Login failed: Username not found: ", username); secubean.logMessage(SecurityLogType.permissionDenied, (User)null, "Login failed: Username not found: ", username);
} }
...@@ -71,12 +88,12 @@ public class JaasBean implements JaasBeanLocal, JaasBeanRemote { ...@@ -71,12 +88,12 @@ public class JaasBean implements JaasBeanLocal, JaasBeanRemote {
@Override @Override
public Enumeration<String> getGroupNames(String user) { public Enumeration<String> getGroupNames(String user) {
logger.info("Fetching groupNames for user {} event {}", user, eventbean.getCurrentEvent().getName()); logger.info("Fetching groupNames for user {} event {}", user, eventbean.getCurrentEvent().getName());
User usr = userfacade.findByLogin(user); EventUser usr = eventUserFacade.findByLogin(user);
HashSet<String> roleset = new HashSet<String>(); HashSet<String> roleset = new HashSet<String>();
roleset.add(UserPermission.ANYUSER.getFullName()); roleset.add(UserPermission.ANYUSER.getFullName());
if (usr == null) { if (usr == null) {
usr = permbean.getAnonUser(); usr = permbean.getAnonEventUser();
roleset.add(SpecialPermission.ANONYMOUS.name()); roleset.add(SpecialPermission.ANONYMOUS.name());
} }
......
...@@ -13,6 +13,7 @@ import org.slf4j.Logger; ...@@ -13,6 +13,7 @@ import org.slf4j.Logger;
import fi.insomnia.bortal.facade.LogEntryFacade; import fi.insomnia.bortal.facade.LogEntryFacade;
import fi.insomnia.bortal.facade.LogEntryTypeFacade; import fi.insomnia.bortal.facade.LogEntryTypeFacade;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LogEntry; import fi.insomnia.bortal.model.LogEntry;
import fi.insomnia.bortal.model.LogEntryType; import fi.insomnia.bortal.model.LogEntryType;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -26,7 +27,8 @@ public class LoggingBean implements LoggingBeanLocal { ...@@ -26,7 +27,8 @@ public class LoggingBean implements LoggingBeanLocal {
private static final boolean DEBUG = true; private static final boolean DEBUG = true;
private final Logger logger = org.slf4j.LoggerFactory.getLogger(LoggingBean.class); private final Logger logger = org.slf4j.LoggerFactory
.getLogger(LoggingBean.class);
@EJB @EJB
private LogEntryTypeFacade typeFacade; private LogEntryTypeFacade typeFacade;
@EJB @EJB
...@@ -84,7 +86,8 @@ public class LoggingBean implements LoggingBeanLocal { ...@@ -84,7 +86,8 @@ public class LoggingBean implements LoggingBeanLocal {
// } // }
@Override @Override
public LogEntry logMessage(SecurityLogType paramType, User user, String... description) { public LogEntry logMessage(SecurityLogType paramType, User user,
String... description) {
LogEntry entry = null; LogEntry entry = null;
try { try {
String desc = toString(description); String desc = toString(description);
...@@ -97,7 +100,10 @@ public class LoggingBean implements LoggingBeanLocal { ...@@ -97,7 +100,10 @@ public class LoggingBean implements LoggingBeanLocal {
entryFacade.create(entry); entryFacade.create(entry);
if (DEBUG) { if (DEBUG) {
logger.debug("SECURITY DEBUG: Type: \"{}\" user \"{}\", description \"{}\"", new String[] { paramType.name(), (user == null) ? "null" : user.getLogin(), desc }); logger.debug(
"SECURITY DEBUG: Type: \"{}\" user \"{}\", description \"{}\"",
new String[] { paramType.name(),
(user == null) ? "null" : user.getLogin(), desc });
} }
utx.commit(); utx.commit();
} catch (Exception e) { } catch (Exception e) {
...@@ -106,6 +112,12 @@ public class LoggingBean implements LoggingBeanLocal { ...@@ -106,6 +112,12 @@ public class LoggingBean implements LoggingBeanLocal {
return entry; return entry;
} }
@Override
public LogEntry logMessage(SecurityLogType paramType, EventUser user,
String... description) {
return logMessage(paramType, user.getUser(), description);
}
private static final String toString(String... desc) { private static final String toString(String... desc) {
StringBuilder msg = new StringBuilder(); StringBuilder msg = new StringBuilder();
for (String msgpart : desc) { for (String msgpart : desc) {
......
...@@ -32,17 +32,19 @@ import org.slf4j.LoggerFactory; ...@@ -32,17 +32,19 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.exceptions.BortalCatchableException; import fi.insomnia.bortal.exceptions.BortalCatchableException;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.GroupMembershipFacade; import fi.insomnia.bortal.facade.GroupMembershipFacade;
import fi.insomnia.bortal.facade.PlaceFacade; import fi.insomnia.bortal.facade.PlaceFacade;
import fi.insomnia.bortal.facade.PlaceGroupFacade; import fi.insomnia.bortal.facade.PlaceGroupFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.User;
/** /**
* *
...@@ -75,8 +77,13 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -75,8 +77,13 @@ public class PlaceBean implements PlaceBeanLocal {
private LoggingBeanLocal logbean; private LoggingBeanLocal logbean;
@EJB @EJB
private PermissionBeanLocal permbean; private PermissionBeanLocal permbean;
@EJB @EJB
private UserFacade userfacade; private UserFacade userfacade;
@EJB
private EventUserFacade eventUserFacade;
@EJB @EJB
private LoggingBeanLocal loggerbean; private LoggingBeanLocal loggerbean;
@EJB @EJB
...@@ -109,13 +116,13 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -109,13 +116,13 @@ public class PlaceBean implements PlaceBeanLocal {
@RolesAllowed(MapPermission.S_MANAGE_OTHERS) @RolesAllowed(MapPermission.S_MANAGE_OTHERS)
@Override @Override
public BigDecimal getTotalReservationPrice(User user, Place newPlace) public BigDecimal getTotalReservationPrice(EventUser user, Place newPlace)
{ {
return addAndCalcPrice(user, newPlace); return addAndCalcPrice(user, newPlace);
} }
private BigDecimal addAndCalcPrice(User user, Place newPlace) { private BigDecimal addAndCalcPrice(IUser user, Place newPlace) {
Set<Place> places = new HashSet<Place>(); Set<Place> places = new HashSet<Place>();
places.addAll(placeFacade.findUsersReservations(eventBean.getCurrentEvent(), user)); places.addAll(placeFacade.findUsersReservations(eventBean.getCurrentEvent(), user));
...@@ -173,9 +180,9 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -173,9 +180,9 @@ public class PlaceBean implements PlaceBeanLocal {
*/ */
@Override @Override
@RolesAllowed(MapPermission.S_BUY_PLACES) @RolesAllowed(MapPermission.S_BUY_PLACES)
public boolean reservePlace(Place place, User user) { public boolean reservePlace(Place place, EventUser user) {
place = placeFacade.find(place.getId()); place = placeFacade.find(place.getId());
user = userfacade.find(user.getId()); user = eventUserFacade.find(user.getId());
boolean ret = false; boolean ret = false;
if (place.isBuyable() && !place.isTaken()) { if (place.isBuyable() && !place.isTaken()) {
place.setCurrentUser(user); place.setCurrentUser(user);
...@@ -221,7 +228,7 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -221,7 +228,7 @@ public class PlaceBean implements PlaceBeanLocal {
@Override @Override
@RolesAllowed(MapPermission.S_BUY_PLACES) @RolesAllowed(MapPermission.S_BUY_PLACES)
public PlaceGroup buySelectedPlaces(User user) throws BortalCatchableException { public PlaceGroup buySelectedPlaces(EventUser user) throws BortalCatchableException {
if (user == null) { if (user == null) {
user = permbean.getCurrentUser(); user = permbean.getCurrentUser();
} else { } else {
...@@ -229,7 +236,7 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -229,7 +236,7 @@ public class PlaceBean implements PlaceBeanLocal {
loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "Can not buy places for user " + user); loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "Can not buy places for user " + user);
throw new EJBAccessException("Not enough permissions to buy place"); throw new EJBAccessException("Not enough permissions to buy place");
} }
user = userfacade.find(user.getId()); user = eventUserFacade.find(user.getId());
} }
LanEvent event = eventBean.getCurrentEvent(); LanEvent event = eventBean.getCurrentEvent();
...@@ -272,7 +279,7 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -272,7 +279,7 @@ public class PlaceBean implements PlaceBeanLocal {
} }
// This method should not be available in the local bean client // This method should not be available in the local bean client
void lockPlaceProduct(User user, Product prod, BigDecimal quantity) { void lockPlaceProduct(EventUser user, Product prod, BigDecimal quantity) {
int loop = quantity.intValue(); int loop = quantity.intValue();
// BigDecimal loop = BigDecimal.ZERO; // BigDecimal loop = BigDecimal.ZERO;
...@@ -312,7 +319,7 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -312,7 +319,7 @@ public class PlaceBean implements PlaceBeanLocal {
pgfacade.create(pg); pgfacade.create(pg);
} }
private void buy(Place p, PlaceGroup pg, User user) { private void buy(Place p, PlaceGroup pg, IUser user) {
p.setGroup(pg); p.setGroup(pg);
p.setReleaseTime(null); p.setReleaseTime(null);
// Current user temporarily used at place reservation. When buying // Current user temporarily used at place reservation. When buying
...@@ -414,7 +421,7 @@ public class PlaceBean implements PlaceBeanLocal { ...@@ -414,7 +421,7 @@ public class PlaceBean implements PlaceBeanLocal {
@RolesAllowed(MapPermission.S_BUY_PLACES) @RolesAllowed(MapPermission.S_BUY_PLACES)
public boolean releasePlace(Place place) { public boolean releasePlace(Place place) {
place = placeFacade.find(place.getId()); place = placeFacade.find(place.getId());
User user = permbean.getCurrentUser(); IUser user = permbean.getCurrentUser();
if (place.getGroup() != null || place.getCurrentUser() == null || (!permbean.hasPermission(MapPermission.MANAGE_OTHERS) && !place.getCurrentUser().equals(user))) { if (place.getGroup() != null || place.getCurrentUser() == null || (!permbean.hasPermission(MapPermission.MANAGE_OTHERS) && !place.getCurrentUser().equals(user))) {
return false; return false;
} }
......
...@@ -25,9 +25,9 @@ import fi.insomnia.bortal.enums.apps.MapPermission; ...@@ -25,9 +25,9 @@ import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.facade.GroupMembershipFacade; import fi.insomnia.bortal.facade.GroupMembershipFacade;
import fi.insomnia.bortal.facade.PlaceGroupFacade; import fi.insomnia.bortal.facade.PlaceGroupFacade;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.User;
/** /**
* Session Bean implementation class PlaceGroupBean * Session Bean implementation class PlaceGroupBean
...@@ -76,7 +76,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -76,7 +76,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public List<GroupMembership> getMembershipsAndCreations(User user) { public List<GroupMembership> getMembershipsAndCreations(EventUser user) {
if (user == null) { if (user == null) {
user = permbean.getCurrentUser(); user = permbean.getCurrentUser();
} else if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) { } else if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) {
...@@ -88,7 +88,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -88,7 +88,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public List<GroupMembership> getMemberships(User user) { public List<GroupMembership> getMemberships(EventUser user) {
if (user == null) { if (user == null) {
user = permbean.getCurrentUser(); user = permbean.getCurrentUser();
} else if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) { } else if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) {
...@@ -100,7 +100,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -100,7 +100,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
@RolesAllowed(MapPermission.S_BUY_PLACES) @RolesAllowed(MapPermission.S_BUY_PLACES)
public boolean associateToToken(User user, String token) { public boolean associateToToken(EventUser user, String token) {
if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) { if (!permbean.isCurrentUser(user) && !permbean.hasPermission(MapPermission.MANAGE_OTHERS)) {
throw new EJBAccessException(); throw new EJBAccessException();
...@@ -121,7 +121,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -121,7 +121,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public void getGroupMembershipPdf(User usr, OutputStream ostream) { public void getGroupMembershipPdf(EventUser usr, OutputStream ostream) {
List<GroupMembership> memberships = getMembershipsAndCreations(usr); List<GroupMembership> memberships = getMembershipsAndCreations(usr);
try { try {
PDF pdf = new PDF(ostream); PDF pdf = new PDF(ostream);
...@@ -191,7 +191,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal { ...@@ -191,7 +191,7 @@ public class PlaceGroupBean implements PlaceGroupBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public List<PlaceGroup> getPlacegroups(User user) { public List<PlaceGroup> getPlacegroups(EventUser user) {
return pgfacade.find(user); return pgfacade.find(user);
} }
} }
...@@ -13,14 +13,15 @@ import javax.ejb.Stateless; ...@@ -13,14 +13,15 @@ import javax.ejb.Stateless;
import fi.insomnia.bortal.enums.apps.ShopPermission; import fi.insomnia.bortal.enums.apps.ShopPermission;
import fi.insomnia.bortal.facade.AccountEventFacade; import fi.insomnia.bortal.facade.AccountEventFacade;
import fi.insomnia.bortal.facade.DiscountFacade; import fi.insomnia.bortal.facade.DiscountFacade;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.ProductFacade; import fi.insomnia.bortal.facade.ProductFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.Discount; import fi.insomnia.bortal.model.Discount;
import fi.insomnia.bortal.model.DiscountInstance; import fi.insomnia.bortal.model.DiscountInstance;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.User;
/** /**
* Session Bean implementation class ProductBean * Session Bean implementation class ProductBean
...@@ -52,6 +53,8 @@ public class ProductBean implements ProductBeanLocal { ...@@ -52,6 +53,8 @@ public class ProductBean implements ProductBeanLocal {
@EJB @EJB
private PermissionBeanLocal permbean; private PermissionBeanLocal permbean;
@EJB
private EventUserFacade eventUserFacade;
/** /**
* Default constructor. * Default constructor.
...@@ -130,14 +133,14 @@ public class ProductBean implements ProductBeanLocal { ...@@ -130,14 +133,14 @@ public class ProductBean implements ProductBeanLocal {
// } // }
@Override @Override
public AccountEvent createAccountEvent(Product product, BigDecimal quantity, User user) { public AccountEvent createAccountEvent(Product product, BigDecimal quantity, EventUser user) {
BigDecimal unitPrice = product.getPrice().negate(); BigDecimal unitPrice = product.getPrice().negate();
List<Discount> discounts = product.getActiveDiscounts(quantity); List<Discount> discounts = product.getActiveDiscounts(quantity);
for (Discount d : discounts) { for (Discount d : discounts) {
unitPrice = unitPrice.multiply(d.getPercentage()); unitPrice = unitPrice.multiply(d.getPercentage());
} }
user = userFacade.find(user.getId()); user = eventUserFacade.find(user.getId());
AccountEvent ret = new AccountEvent(user, product, unitPrice, quantity, Calendar.getInstance()); AccountEvent ret = new AccountEvent(user, product, unitPrice, quantity, Calendar.getInstance());
ret.setDelivered(Calendar.getInstance()); ret.setDelivered(Calendar.getInstance());
......
...@@ -24,8 +24,8 @@ import fi.insomnia.bortal.enums.apps.UserPermission; ...@@ -24,8 +24,8 @@ import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.RoleFacade; import fi.insomnia.bortal.facade.RoleFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.ApplicationPermission; import fi.insomnia.bortal.model.ApplicationPermission;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User;
/** /**
* *
...@@ -168,13 +168,13 @@ public class RoleBean implements RoleBeanLocal { ...@@ -168,13 +168,13 @@ public class RoleBean implements RoleBeanLocal {
@Override @Override
@RolesAllowed(UserPermission.S_READ_ROLES) @RolesAllowed(UserPermission.S_READ_ROLES)
public List<Role> getRoles(User user) { public List<Role> getRoles(EventUser user) {
return roleFacade.findForUser(user); return roleFacade.findForUser(user);
} }
@Override @Override
@RolesAllowed(UserPermission.S_WRITE_ROLES) @RolesAllowed(UserPermission.S_WRITE_ROLES)
public void saveRoles(User usr, List<Role> usersRoles) { public void saveRoles(EventUser usr, List<Role> usersRoles) {
List<Role> allRoles = roleFacade.findAll(); List<Role> allRoles = roleFacade.findAll();
for (Role ur : allRoles) for (Role ur : allRoles)
......
...@@ -25,6 +25,7 @@ import fi.insomnia.bortal.model.Bill; ...@@ -25,6 +25,7 @@ import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.Compo; import fi.insomnia.bortal.model.Compo;
import fi.insomnia.bortal.model.CompoEntry; import fi.insomnia.bortal.model.CompoEntry;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -94,7 +95,7 @@ public class TestDataBean implements TestDataBeanLocal { ...@@ -94,7 +95,7 @@ public class TestDataBean implements TestDataBeanLocal {
} }
@Override @Override
public User createUser() { public IUser createUser() {
User u = new User(); User u = new User();
u.setActive(true); u.setActive(true);
...@@ -119,7 +120,7 @@ public class TestDataBean implements TestDataBeanLocal { ...@@ -119,7 +120,7 @@ public class TestDataBean implements TestDataBeanLocal {
} }
@Override @Override
public User createAdmin() { public IUser createAdmin() {
User u = new User(); User u = new User();
...@@ -310,7 +311,7 @@ public class TestDataBean implements TestDataBeanLocal { ...@@ -310,7 +311,7 @@ public class TestDataBean implements TestDataBeanLocal {
} }
@Override @Override
public Bill createBill(User u) { public Bill createBill(IUser u) {
// TODO Auto-generated method stub // TODO Auto-generated method stub
return null; return null;
} }
......
...@@ -28,12 +28,15 @@ import org.slf4j.LoggerFactory; ...@@ -28,12 +28,15 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.EventUserFacade;
import fi.insomnia.bortal.facade.GroupMembershipFacade; import fi.insomnia.bortal.facade.GroupMembershipFacade;
import fi.insomnia.bortal.facade.PlaceGroupFacade; import fi.insomnia.bortal.facade.PlaceGroupFacade;
import fi.insomnia.bortal.facade.RoleFacade; import fi.insomnia.bortal.facade.RoleFacade;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.facade.UserImageFacade; import fi.insomnia.bortal.facade.UserImageFacade;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.LanEventPropertyKey; import fi.insomnia.bortal.model.LanEventPropertyKey;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
...@@ -68,6 +71,9 @@ public class UserBean implements UserBeanLocal { ...@@ -68,6 +71,9 @@ public class UserBean implements UserBeanLocal {
@EJB @EJB
private UserFacade userFacade; private UserFacade userFacade;
@EJB
private EventUserFacade eventUserFacade;
@PersistenceContext @PersistenceContext
private EntityManager em; private EntityManager em;
...@@ -103,29 +109,29 @@ public class UserBean implements UserBeanLocal { ...@@ -103,29 +109,29 @@ public class UserBean implements UserBeanLocal {
@Override @Override
@RolesAllowed(UserPermission.S_VIEW_ALL) @RolesAllowed(UserPermission.S_VIEW_ALL)
public List<User> getUsers() { public List<EventUser> getUsers() {
List<User> ret = userFacade.findAll(); List<EventUser> ret = eventUserFacade.findAll();
return ret; return ret;
} }
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public User mergeChanges(User user) { public EventUser mergeChanges(EventUser user) {
if (!permbean.isCurrentUser(user) && !permbean.hasPermission(UserPermission.MODIFY)) { if (!permbean.isCurrentUser(user) && !permbean.hasPermission(UserPermission.MODIFY)) {
loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to save another user: " + user); loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to save another user: " + user);
throw new EJBAccessException("Not enough rights to save user"); throw new EJBAccessException("Not enough rights to save user");
} }
User ret = userFacade.merge(user); EventUser ret = eventUserFacade.merge(user);
ctbean.checkPrintedCard(ret); ctbean.checkPrintedCard(ret);
return ret; return ret;
} }
@Override @Override
public List<Role> findUsersRoles(User u) { public List<Role> findUsersRoles(EventUser u) {
User currusr = permbean.getCurrentUser(); IUser currusr = permbean.getCurrentUser();
if (!currusr.equals(u) && !permbean.hasPermission(UserPermission.MODIFY)) { if (!currusr.equals(u) && !permbean.hasPermission(UserPermission.MODIFY)) {
loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to fetc another users roles: " + u); loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to fetc another users roles: " + u);
throw new EJBAccessException("Not enough rights to find roles"); throw new EJBAccessException("Not enough rights to find roles");
...@@ -135,7 +141,7 @@ public class UserBean implements UserBeanLocal { ...@@ -135,7 +141,7 @@ public class UserBean implements UserBeanLocal {
} }
public List<Role> localFindUsersRoles(User u) { public List<Role> localFindUsersRoles(EventUser u) {
Set<Role> checkedRoles = new HashSet<Role>(); Set<Role> checkedRoles = new HashSet<Role>();
if (u != null) if (u != null)
{ {
...@@ -180,18 +186,18 @@ public class UserBean implements UserBeanLocal { ...@@ -180,18 +186,18 @@ public class UserBean implements UserBeanLocal {
@Override @Override
@RolesAllowed(SpecialPermission.S_USER) @RolesAllowed(SpecialPermission.S_USER)
public UserImage uploadImage(User user, String contentType, byte[] image, String filename, String description) { public UserImage uploadImage(EventUser user, String contentType, byte[] image, String filename, String description) {
user = userFacade.merge(user); user = eventUserFacade.merge(user);
logger.debug("uploading image to userid {}", user); logger.debug("uploading image to userid {}", user);
User curruser = permbean.getCurrentUser(); EventUser curruser = permbean.getCurrentUser();
if (!curruser.equals(user) && !permbean.hasPermission(UserPermission.MODIFY)) { if (!curruser.equals(user) && !permbean.hasPermission(UserPermission.MODIFY)) {
loggerbean.logMessage(SecurityLogType.permissionDenied, curruser, "user tried to save picture to userid " + user + " without sufficient permissions!"); loggerbean.logMessage(SecurityLogType.permissionDenied, curruser, "user tried to save picture to userid " + user + " without sufficient permissions!");
throw new EJBAccessException("No permission to upload image as another user"); throw new EJBAccessException("No permission to upload image as another user");
} }
UserImage userimage = new UserImage(user); UserImage userimage = new UserImage(user.getUser());
userimage.setMimeType(contentType); userimage.setMimeType(contentType);
userimage.setImageData(image); userimage.setImageData(image);
userimage.setName(filename); userimage.setName(filename);
...@@ -235,13 +241,13 @@ public class UserBean implements UserBeanLocal { ...@@ -235,13 +241,13 @@ public class UserBean implements UserBeanLocal {
@Override @Override
@RolesAllowed(UserPermission.S_CREATE_NEW) @RolesAllowed(UserPermission.S_CREATE_NEW)
public User createNewUser(User user, String password) { public void createNewUser(EventUser user, String password) {
user.resetPassword(password); user.resetPassword(password);
user.setEvent(eventBean.getCurrentEvent());
// Tallennetaan olio kantaan... // Tallennetaan olio kantaan...
userFacade.create(user); eventUserFacade.create(user);
em.flush(); em.flush();
return user;
} }
@Override @Override
...@@ -317,7 +323,7 @@ public class UserBean implements UserBeanLocal { ...@@ -317,7 +323,7 @@ public class UserBean implements UserBeanLocal {
if (usercheck.size() > 0) { if (usercheck.size() > 0) {
return false; return false;
} }
User creator = permbean.getCurrentUser(); EventUser creator = permbean.getCurrentUser();
LanEvent ev = eventBean.getCurrentEvent(); LanEvent ev = eventBean.getCurrentEvent();
PlaceGroup pg = new PlaceGroup(ev, Calendar.getInstance(), Calendar.getInstance(), false); PlaceGroup pg = new PlaceGroup(ev, Calendar.getInstance(), Calendar.getInstance(), false);
pg.setCreator(creator); pg.setCreator(creator);
...@@ -342,12 +348,13 @@ public class UserBean implements UserBeanLocal { ...@@ -342,12 +348,13 @@ public class UserBean implements UserBeanLocal {
@Override @Override
@PermitAll @PermitAll
public void createFromToken(User user, String token) { public void createFromToken(EventUser user, String token) {
GroupMembership gm = findToken(token); GroupMembership gm = findToken(token);
user.setEvent(eventBean.getCurrentEvent());
gm.setUser(user); gm.setUser(user);
gm.setInviteAccepted(Calendar.getInstance()); gm.setInviteAccepted(Calendar.getInstance());
userFacade.create(user); eventUserFacade.create(user);
} }
@Override @Override
...@@ -369,7 +376,7 @@ public class UserBean implements UserBeanLocal { ...@@ -369,7 +376,7 @@ public class UserBean implements UserBeanLocal {
UserImage ret = new UserImage(user); UserImage ret = new UserImage(user);
ret.setMimeType(currimage.getMimeType()); ret.setMimeType(currimage.getMimeType());
User curruser = permbean.getCurrentUser(); User curruser = permbean.getCurrentUser().getUser();
ret.setDescription("Cropped by: [" + curruser.getId() + "] " + curruser.getWholeName() + " from image: " + currimage.getId()); ret.setDescription("Cropped by: [" + curruser.getId() + "] " + curruser.getWholeName() + " from image: " + currimage.getId());
ret.setImageData(naamaout.toByteArray()); ret.setImageData(naamaout.toByteArray());
...@@ -387,14 +394,45 @@ public class UserBean implements UserBeanLocal { ...@@ -387,14 +394,45 @@ public class UserBean implements UserBeanLocal {
@Override @Override
@RolesAllowed(UserPermission.S_CREATE_NEW) @RolesAllowed(UserPermission.S_CREATE_NEW)
public void createNewUser(User usr) { public EventUser createNewUser(User usr) {
userFacade.create(usr); EventUser evu = new EventUser(usr, eventBean.getCurrentEvent());
eventUserFacade.create(evu);
return evu;
} }
@Override @Override
public boolean userExists(String login) { public boolean userExists(String login) {
User usr = userFacade.findByLogin(login); IUser usr = userFacade.findByLogin(login);
return usr != null; return usr != null;
} }
@Override
public EventUser findEventUserById(Integer integer) {
return eventUserFacade.find(integer);
}
@Override
@RolesAllowed(SpecialPermission.S_USER)
public EventUser mergeEventUserChanges(EventUser user) {
if (!permbean.isCurrentUser(user) && !permbean.hasPermission(UserPermission.MODIFY)) {
loggerbean.logMessage(SecurityLogType.permissionDenied, permbean.getCurrentUser(), "User tried to save another user: " + user);
throw new EJBAccessException("Not enough rights to save user");
}
EventUser ret = eventUserFacade.merge(user);
return ret;
}
@Override
public EventUser getEventUser(User user) {
EventUser ret = eventUserFacade.find(user);
if (ret == null)
{
ret = new EventUser(user, eventBean.getCurrentEvent());
eventUserFacade.create(ret);
eventUserFacade.flush();
}
return ret;
}
} }
...@@ -8,7 +8,7 @@ import org.slf4j.Logger; ...@@ -8,7 +8,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.facade.UserFacade; import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
/** /**
* Session Bean implementation class UserUtilBean * Session Bean implementation class UserUtilBean
...@@ -34,12 +34,12 @@ public class UserUtilBean implements UserUtilBeanLocal { ...@@ -34,12 +34,12 @@ public class UserUtilBean implements UserUtilBeanLocal {
@Override @Override
public void convertUsernames() { public void convertUsernames() {
for (User u : userbean.getUsers()) { for (IUser u : userbean.getUsers()) {
if (u.getLogin().trim().isEmpty()) { if (u.getLogin().trim().isEmpty()) {
logger.warn("User {} has empty login..."); logger.warn("User {} has empty login...");
continue; continue;
} }
User testU = userfacade.findByLogin(u.getLogin().toLowerCase()); IUser testU = userfacade.findByLogin(u.getLogin().toLowerCase());
if (testU == null || testU.equals(u)) { if (testU == null || testU.equals(u)) {
u.setLogin(u.getLogin().toLowerCase()); u.setLogin(u.getLogin().toLowerCase());
logger.info("Converted user {}", u.getLogin()); logger.info("Converted user {}", u.getLogin());
......
...@@ -27,6 +27,7 @@ import org.slf4j.Logger; ...@@ -27,6 +27,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.enums.apps.SpecialPermission; import fi.insomnia.bortal.enums.apps.SpecialPermission;
import fi.insomnia.bortal.facade.UserFacade;
import fi.insomnia.bortal.model.LanEventPropertyKey; import fi.insomnia.bortal.model.LanEventPropertyKey;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.model.UserImage; import fi.insomnia.bortal.model.UserImage;
...@@ -56,6 +57,8 @@ public class UtilBean implements UtilBeanLocal { ...@@ -56,6 +57,8 @@ public class UtilBean implements UtilBeanLocal {
private Queue mailQueue; private Queue mailQueue;
@Resource(name = "connFactory", mappedName = "jms/mailconnectionfactory") @Resource(name = "connFactory", mappedName = "jms/mailconnectionfactory")
private QueueConnectionFactory mailQuefactory; private QueueConnectionFactory mailQuefactory;
@EJB
private UserFacade userfacade;
@Override @Override
public boolean sendMail(MailMessage message) { public boolean sendMail(MailMessage message) {
...@@ -94,7 +97,7 @@ public class UtilBean implements UtilBeanLocal { ...@@ -94,7 +97,7 @@ public class UtilBean implements UtilBeanLocal {
@Override @Override
public boolean convertImage(User user) { public boolean convertImage(User user) {
user = userbean.mergeChanges(user); user = userfacade.find(user.getId());
UserImage oldpic = user.getCurrentImage(); UserImage oldpic = user.getCurrentImage();
if (oldpic == null || oldpic.getMimeType() == null || if (oldpic == null || oldpic.getMimeType() == null ||
......
...@@ -12,11 +12,11 @@ import javax.persistence.criteria.Root; ...@@ -12,11 +12,11 @@ import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.AccountEvent_; import fi.insomnia.bortal.model.AccountEvent_;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Product_; import fi.insomnia.bortal.model.Product_;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.Role_; import fi.insomnia.bortal.model.Role_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -29,7 +29,7 @@ public class AccountEventFacade extends IntegerPkGenericFacade<AccountEvent> { ...@@ -29,7 +29,7 @@ public class AccountEventFacade extends IntegerPkGenericFacade<AccountEvent> {
@EJB @EJB
private EventBeanLocal eventbean; private EventBeanLocal eventbean;
public List<Role> findProvidedRoles(LanEvent event, User u) { public List<Role> findProvidedRoles(LanEvent event, IUser u) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Role> cq = cb.createQuery(Role.class); CriteriaQuery<Role> cq = cb.createQuery(Role.class);
...@@ -48,7 +48,7 @@ public class AccountEventFacade extends IntegerPkGenericFacade<AccountEvent> { ...@@ -48,7 +48,7 @@ public class AccountEventFacade extends IntegerPkGenericFacade<AccountEvent> {
return getEm().createQuery(cq).getResultList(); return getEm().createQuery(cq).getResultList();
} }
public List<AccountEvent> getAccountEvents(User user) { public List<AccountEvent> getAccountEvents(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<AccountEvent> cq = cb.createQuery(AccountEvent.class); CriteriaQuery<AccountEvent> cq = cb.createQuery(AccountEvent.class);
......
...@@ -12,7 +12,7 @@ import javax.persistence.criteria.Root; ...@@ -12,7 +12,7 @@ import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.Bill_; import fi.insomnia.bortal.model.Bill_;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -53,7 +53,7 @@ public class BillFacade extends IntegerPkGenericFacade<Bill> { ...@@ -53,7 +53,7 @@ public class BillFacade extends IntegerPkGenericFacade<Bill> {
return getEm().createQuery(cq).getResultList(); return getEm().createQuery(cq).getResultList();
} }
public List<Bill> find(User user) { public List<Bill> find(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Bill> cq = cb.createQuery(Bill.class); CriteriaQuery<Bill> cq = cb.createQuery(Bill.class);
Root<Bill> root = cq.from(Bill.class); Root<Bill> root = cq.from(Bill.class);
......
...@@ -10,7 +10,7 @@ import javax.persistence.criteria.Root; ...@@ -10,7 +10,7 @@ import javax.persistence.criteria.Root;
import fi.insomnia.bortal.model.EventOrganiser; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.EventOrganiser_; import fi.insomnia.bortal.model.EventOrganiser_;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -39,7 +39,7 @@ public class EventOrganiserFacade extends IntegerPkGenericFacade<EventOrganiser> ...@@ -39,7 +39,7 @@ public class EventOrganiserFacade extends IntegerPkGenericFacade<EventOrganiser>
return getEm().createQuery(cq).getResultList(); return getEm().createQuery(cq).getResultList();
} }
public List<EventOrganiser> find(User user) { public List<EventOrganiser> find(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class); CriteriaQuery<EventOrganiser> cq = cb.createQuery(EventOrganiser.class);
Root<EventOrganiser> root = cq.from(EventOrganiser.class); Root<EventOrganiser> root = cq.from(EventOrganiser.class);
......
package fi.insomnia.bortal.facade;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.EventUser_;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.model.User_;
/**
* Session Bean implementation class EventUserFacade
*/
@Stateless
@LocalBean
public class EventUserFacade extends IntegerPkGenericFacade<EventUser> {
@EJB
private EventBeanLocal eventBean;
public EventUserFacade() {
super(EventUser.class);
}
public EventUser findByLogin(String login) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<EventUser> cq = cb.createQuery(EventUser.class);
Root<EventUser> root = cq.from(EventUser.class);
cq.where(
cb.equal(root.get(EventUser_.user).get(User_.login), login),
cb.equal(root.get(EventUser_.event),
eventBean.getCurrentEvent()));
return getSingleNullableResult(getEm().createQuery(cq));
}
public EventUser find(User user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<EventUser> cq = cb.createQuery(EventUser.class);
Root<EventUser> root = cq.from(EventUser.class);
cq.where(
cb.equal(root.get(EventUser_.user), user),
cb.equal(root.get(EventUser_.event),
eventBean.getCurrentEvent()));
return getSingleNullableResult(getEm().createQuery(cq));
}
public List<EventUser> findAll() {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<EventUser> cq = cb.createQuery(EventUser.class);
Root<EventUser> root = cq.from(EventUser.class);
cq.where(cb.equal(root.get(EventUser_.event),
eventBean.getCurrentEvent()));
return getEm().createQuery(cq).getResultList();
}
}
...@@ -16,10 +16,10 @@ import org.slf4j.LoggerFactory; ...@@ -16,10 +16,10 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.GroupMembership_; import fi.insomnia.bortal.model.GroupMembership_;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.PlaceGroup_; import fi.insomnia.bortal.model.PlaceGroup_;
import fi.insomnia.bortal.model.Place_; import fi.insomnia.bortal.model.Place_;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.utilities.PasswordFunctions; import fi.insomnia.bortal.utilities.PasswordFunctions;
@Stateless @Stateless
...@@ -66,7 +66,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi ...@@ -66,7 +66,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
return getSingleNullableResult(getEm().createQuery(cq)); return getSingleNullableResult(getEm().createQuery(cq));
} }
public List<GroupMembership> findMemberOrCreator(User user) { public List<GroupMembership> findMemberOrCreator(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class); CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class);
Root<GroupMembership> root = cq.from(GroupMembership.class); Root<GroupMembership> root = cq.from(GroupMembership.class);
...@@ -87,7 +87,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi ...@@ -87,7 +87,7 @@ public class GroupMembershipFacade extends IntegerPkGenericFacade<GroupMembershi
return getEm().createQuery(cq).getResultList(); return getEm().createQuery(cq).getResultList();
} }
public List<GroupMembership> findMemberships(User user) { public List<GroupMembership> findMemberships(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class); CriteriaQuery<GroupMembership> cq = cb.createQuery(GroupMembership.class);
Root<GroupMembership> root = cq.from(GroupMembership.class); Root<GroupMembership> root = cq.from(GroupMembership.class);
......
package fi.insomnia.bortal.facade;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.LocalBean;
import javax.ejb.Stateless;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.OrgRole;
import fi.insomnia.bortal.model.OrgRole_;
import fi.insomnia.bortal.model.User;
/**
* Session Bean implementation class OrgRoleFacade
*/
@Stateless
@LocalBean
public class OrgRoleFacade extends IntegerPkGenericFacade<OrgRole> {
@EJB
EventBeanLocal eventBean;
public OrgRoleFacade() {
super(OrgRole.class);
}
public List<OrgRole> findForUser(User user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<OrgRole> cq = cb.createQuery(OrgRole.class);
Root<OrgRole> root = cq.from(OrgRole.class);
cq.where(cb.equal(root.get(OrgRole_.eventOrganizer), eventBean
.getCurrentEvent().getOrganiser()), cb.isMember(user,
root.get(OrgRole_.users)));
return getEm().createQuery(cq).getResultList();
}
public OrgRole createRole(EventOrganiser org, String roleName) {
OrgRole ret = new OrgRole();
ret.setEventOrganizer(org);
ret.setName(roleName);
create(ret);
return ret;
}
public List<OrgRole> findAll() {
CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<OrgRole> cq = cb.createQuery(OrgRole.class);
Root<OrgRole> root = cq.from(OrgRole.class);
cq.where(cb.equal(root.get(OrgRole_.eventOrganizer), eventBean
.getCurrentEvent().getOrganiser()));
return getEm().createQuery(cq).getResultList();
}
}
...@@ -16,10 +16,10 @@ import org.slf4j.LoggerFactory; ...@@ -16,10 +16,10 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.EventMap_; import fi.insomnia.bortal.model.EventMap_;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.Place_; import fi.insomnia.bortal.model.Place_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -57,7 +57,7 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> { ...@@ -57,7 +57,7 @@ public class PlaceFacade extends IntegerPkGenericFacade<Place> {
} }
} }
public List<Place> findUsersReservations(LanEvent event, User user) { public List<Place> findUsersReservations(LanEvent event, IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Place> cq = cb.createQuery(Place.class); CriteriaQuery<Place> cq = cb.createQuery(Place.class);
......
...@@ -10,9 +10,9 @@ import javax.persistence.criteria.CriteriaQuery; ...@@ -10,9 +10,9 @@ import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root; import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.PlaceGroup_; import fi.insomnia.bortal.model.PlaceGroup_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -26,7 +26,7 @@ public class PlaceGroupFacade extends IntegerPkGenericFacade<PlaceGroup> { ...@@ -26,7 +26,7 @@ public class PlaceGroupFacade extends IntegerPkGenericFacade<PlaceGroup> {
super(PlaceGroup.class); super(PlaceGroup.class);
} }
public List<PlaceGroup> find(User user) { public List<PlaceGroup> find(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<PlaceGroup> cq = cb.createQuery(PlaceGroup.class); CriteriaQuery<PlaceGroup> cq = cb.createQuery(PlaceGroup.class);
Root<PlaceGroup> root = cq.from(PlaceGroup.class); Root<PlaceGroup> root = cq.from(PlaceGroup.class);
......
...@@ -10,10 +10,10 @@ import javax.persistence.criteria.CriteriaQuery; ...@@ -10,10 +10,10 @@ import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root; import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.PrintedCard_; import fi.insomnia.bortal.model.PrintedCard_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -51,7 +51,7 @@ public class PrintedCardFacade extends IntegerPkGenericFacade<PrintedCard> { ...@@ -51,7 +51,7 @@ public class PrintedCardFacade extends IntegerPkGenericFacade<PrintedCard> {
} }
public List<PrintedCard> getCards(User user) { public List<PrintedCard> getCards(IUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<PrintedCard> cq = cb.createQuery(PrintedCard.class); CriteriaQuery<PrintedCard> cq = cb.createQuery(PrintedCard.class);
Root<PrintedCard> root = cq.from(PrintedCard.class); Root<PrintedCard> root = cq.from(PrintedCard.class);
......
...@@ -10,10 +10,10 @@ import javax.persistence.criteria.CriteriaQuery; ...@@ -10,10 +10,10 @@ import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Root; import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.Role_; import fi.insomnia.bortal.model.Role_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
@LocalBean @LocalBean
...@@ -35,7 +35,7 @@ public class RoleFacade extends IntegerPkGenericFacade<Role> { ...@@ -35,7 +35,7 @@ public class RoleFacade extends IntegerPkGenericFacade<Role> {
// return getSingleNullableResult(q); // return getSingleNullableResult(q);
// } // }
public List<Role> findForUser(User user) { public List<Role> findForUser(EventUser user) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<Role> cq = cb.createQuery(Role.class); CriteriaQuery<Role> cq = cb.createQuery(Role.class);
Root<Role> root = cq.from(Role.class); Root<Role> root = cq.from(Role.class);
......
...@@ -13,13 +13,14 @@ import javax.persistence.criteria.Predicate; ...@@ -13,13 +13,14 @@ import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root; import javax.persistence.criteria.Root;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.PageContent; import fi.insomnia.bortal.model.PageContent;
import fi.insomnia.bortal.model.PageContent_; import fi.insomnia.bortal.model.PageContent_;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.Role_; import fi.insomnia.bortal.model.Role_;
import fi.insomnia.bortal.model.SitePage; import fi.insomnia.bortal.model.SitePage;
import fi.insomnia.bortal.model.SitePage_; import fi.insomnia.bortal.model.SitePage_;
import fi.insomnia.bortal.model.User;
@Stateless @Stateless
public class SitePageFacade extends IntegerPkGenericFacade<SitePage> { public class SitePageFacade extends IntegerPkGenericFacade<SitePage> {
...@@ -44,12 +45,12 @@ public class SitePageFacade extends IntegerPkGenericFacade<SitePage> { ...@@ -44,12 +45,12 @@ public class SitePageFacade extends IntegerPkGenericFacade<SitePage> {
// return getSingleNullableResult(getEm().createQuery(cq)); // return getSingleNullableResult(getEm().createQuery(cq));
// } // }
public List<SitePage> findForUser(User user, SitePage siteroot) { public List<SitePage> findForUser(IUser user, SitePage siteroot) {
CriteriaBuilder cb = getEm().getCriteriaBuilder(); CriteriaBuilder cb = getEm().getCriteriaBuilder();
CriteriaQuery<SitePage> cq = cb.createQuery(SitePage.class); CriteriaQuery<SitePage> cq = cb.createQuery(SitePage.class);
Root<SitePage> root = cq.from(SitePage.class); Root<SitePage> root = cq.from(SitePage.class);
ListJoin<Role, User> usrpath = root.join(SitePage_.allowedRoles).join(Role_.users); ListJoin<Role, EventUser> usrpath = root.join(SitePage_.allowedRoles).join(Role_.users);
Path<SitePage> parentpath = root.get(SitePage_.parent); Path<SitePage> parentpath = root.get(SitePage_.parent);
Predicate rootpred = null; Predicate rootpred = null;
......
...@@ -7,9 +7,10 @@ import java.util.Map; ...@@ -7,9 +7,10 @@ import java.util.Map;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User;
@Local @Local
public interface AccountEventBeanLocal { public interface AccountEventBeanLocal {
...@@ -20,13 +21,13 @@ public interface AccountEventBeanLocal { ...@@ -20,13 +21,13 @@ public interface AccountEventBeanLocal {
AccountEvent find(Integer id); AccountEvent find(Integer id);
List<Role> getRolesFromAccountEvents(User u); List<Role> getRolesFromAccountEvents(IUser u);
void shopCash(User shoppingUser, Map<Product, BigDecimal> void shopCash(EventUser shoppingUser, Map<Product, BigDecimal>
shopMap, boolean buyInstant); shopMap, boolean buyInstant);
BigDecimal getAccountBalance(User user); BigDecimal getAccountBalance(IUser user);
List<AccountEvent> getAccountEvents(User user); List<AccountEvent> getAccountEvents(IUser user);
} }
...@@ -9,7 +9,7 @@ import javax.ejb.Local; ...@@ -9,7 +9,7 @@ import javax.ejb.Local;
import fi.insomnia.bortal.bortal.views.BillSummary; import fi.insomnia.bortal.bortal.views.BillSummary;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
@Local @Local
public interface BillBeanLocal { public interface BillBeanLocal {
...@@ -34,6 +34,6 @@ public interface BillBeanLocal { ...@@ -34,6 +34,6 @@ public interface BillBeanLocal {
Bill save(Bill bill); Bill save(Bill bill);
List<Bill> find(User user); List<Bill> find(IUser user);
} }
...@@ -6,8 +6,9 @@ import java.util.List; ...@@ -6,8 +6,9 @@ import java.util.List;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.CardTemplate; import fi.insomnia.bortal.model.CardTemplate;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.utilities.jsf.EntityFinderBean; import fi.insomnia.bortal.utilities.jsf.EntityFinderBean;
@Local @Local
...@@ -19,11 +20,9 @@ public interface CardTemplateBeanLocal extends EntityFinderBean<CardTemplate> { ...@@ -19,11 +20,9 @@ public interface CardTemplateBeanLocal extends EntityFinderBean<CardTemplate> {
CardTemplate find(Integer id); CardTemplate find(Integer id);
PrintedCard checkPrintedCard(User user);
void checkAllUsersCardRights(); void checkAllUsersCardRights();
PrintedCard setRfidUid(String tag, User user); PrintedCard setRfidUid(String tag, EventUser user);
PrintedCard setRfidUid(String tag, PrintedCard card); PrintedCard setRfidUid(String tag, PrintedCard card);
...@@ -33,10 +32,12 @@ public interface CardTemplateBeanLocal extends EntityFinderBean<CardTemplate> { ...@@ -33,10 +32,12 @@ public interface CardTemplateBeanLocal extends EntityFinderBean<CardTemplate> {
PrintedCard getCard(Integer idParam); PrintedCard getCard(Integer idParam);
List<PrintedCard> getCards(User user); List<PrintedCard> getCards(EventUser user);
CardTemplate saveImage(CardTemplate cardTemplate, byte[] bytes) throws IOException; CardTemplate saveImage(CardTemplate cardTemplate, byte[] bytes) throws IOException;
List<CardTemplate> findAll(); List<CardTemplate> findAll();
PrintedCard checkPrintedCard(EventUser user);
} }
...@@ -5,8 +5,8 @@ import java.util.List; ...@@ -5,8 +5,8 @@ import java.util.List;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.EventOrganiser; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.User;
@Local @Local
public interface EventOrganiserBeanLocal { public interface EventOrganiserBeanLocal {
...@@ -21,6 +21,6 @@ public interface EventOrganiserBeanLocal { ...@@ -21,6 +21,6 @@ public interface EventOrganiserBeanLocal {
LanEvent findEvent(Integer eventid); LanEvent findEvent(Integer eventid);
List<EventOrganiser> getOrganisations(User user); List<EventOrganiser> getOrganisations(IUser user);
} }
...@@ -2,6 +2,7 @@ package fi.insomnia.bortal.beans; ...@@ -2,6 +2,7 @@ package fi.insomnia.bortal.beans;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.LogEntry; import fi.insomnia.bortal.model.LogEntry;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -10,4 +11,6 @@ public interface LoggingBeanLocal { ...@@ -10,4 +11,6 @@ public interface LoggingBeanLocal {
LogEntry logMessage(SecurityLogType paramType, User user, String... description); LogEntry logMessage(SecurityLogType paramType, User user, String... description);
LogEntry logMessage(SecurityLogType paramType, EventUser user, String... description);
} }
...@@ -4,6 +4,8 @@ import javax.ejb.Local; ...@@ -4,6 +4,8 @@ import javax.ejb.Local;
import javax.resource.spi.IllegalStateException; import javax.resource.spi.IllegalStateException;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
@Local @Local
...@@ -11,11 +13,11 @@ public interface PermissionBeanLocal { ...@@ -11,11 +13,11 @@ public interface PermissionBeanLocal {
boolean hasPermission(IAppPermission perm); boolean hasPermission(IAppPermission perm);
User getCurrentUser(); EventUser getCurrentUser();
boolean isLoggedIn(); boolean isLoggedIn();
boolean isCurrentUser(User thisuser); boolean isCurrentUser(IUser thisuser);
// boolean fatalPermission(IAppPermission perm, Object... failmessage); // boolean fatalPermission(IAppPermission perm, Object... failmessage);
...@@ -23,8 +25,6 @@ public interface PermissionBeanLocal { ...@@ -23,8 +25,6 @@ public interface PermissionBeanLocal {
// void fatalNotLoggedIn(); // void fatalNotLoggedIn();
User getAnonUser();
String getPrincipal(); String getPrincipal();
/** /**
...@@ -36,6 +36,8 @@ public interface PermissionBeanLocal { ...@@ -36,6 +36,8 @@ public interface PermissionBeanLocal {
*/ */
String getCommonName() throws IllegalStateException; String getCommonName() throws IllegalStateException;
EventUser getAnonEventUser();
// boolean hasPermission(String perm); // boolean hasPermission(String perm);
} }
...@@ -11,9 +11,9 @@ import javax.ejb.Local; ...@@ -11,9 +11,9 @@ import javax.ejb.Local;
import fi.insomnia.bortal.exceptions.BortalCatchableException; import fi.insomnia.bortal.exceptions.BortalCatchableException;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.User;
/** /**
* *
...@@ -25,7 +25,7 @@ public interface PlaceBeanLocal { ...@@ -25,7 +25,7 @@ public interface PlaceBeanLocal {
Place findPlace(EventMap e, int x, int y); Place findPlace(EventMap e, int x, int y);
boolean reservePlace(Place place, User user); boolean reservePlace(Place place, EventUser user);
int setBuyable(EventMap map, String buyableLike, boolean b); int setBuyable(EventMap map, String buyableLike, boolean b);
...@@ -35,7 +35,7 @@ public interface PlaceBeanLocal { ...@@ -35,7 +35,7 @@ public interface PlaceBeanLocal {
Place mergeChanges(Place place); Place mergeChanges(Place place);
PlaceGroup buySelectedPlaces(User user) throws BortalCatchableException; PlaceGroup buySelectedPlaces(EventUser user) throws BortalCatchableException;
// void releaseUsersPlaces(User user) throws PermissionDeniedException; // void releaseUsersPlaces(User user) throws PermissionDeniedException;
...@@ -43,7 +43,7 @@ public interface PlaceBeanLocal { ...@@ -43,7 +43,7 @@ public interface PlaceBeanLocal {
void unbuyPlace(Place place); void unbuyPlace(Place place);
BigDecimal getTotalReservationPrice(User user, Place newPlace); BigDecimal getTotalReservationPrice(EventUser user, Place newPlace);
BigDecimal getTotalReservationPrice(Place newPlace); BigDecimal getTotalReservationPrice(Place newPlace);
......
...@@ -5,9 +5,9 @@ import java.util.List; ...@@ -5,9 +5,9 @@ import java.util.List;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.User;
@Local @Local
public interface PlaceGroupBeanLocal { public interface PlaceGroupBeanLocal {
...@@ -18,16 +18,16 @@ public interface PlaceGroupBeanLocal { ...@@ -18,16 +18,16 @@ public interface PlaceGroupBeanLocal {
// List<GroupMembership> getMemberships(User user); // List<GroupMembership> getMemberships(User user);
boolean associateToToken(User user, String token);
void releaseAndGenerateToken(GroupMembership gmem); void releaseAndGenerateToken(GroupMembership gmem);
List<GroupMembership> getMembershipsAndCreations(User user); List<GroupMembership> getMembershipsAndCreations(EventUser user);
List<GroupMembership> getMemberships(EventUser user);
List<GroupMembership> getMemberships(User user); List<PlaceGroup> getPlacegroups(EventUser user);
List<PlaceGroup> getPlacegroups(User user); void getGroupMembershipPdf(EventUser usr, OutputStream ostream);
void getGroupMembershipPdf(User usr, OutputStream ostream); boolean associateToToken(EventUser user, String token);
} }
...@@ -7,8 +7,8 @@ import javax.ejb.Local; ...@@ -7,8 +7,8 @@ import javax.ejb.Local;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.Discount; import fi.insomnia.bortal.model.Discount;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.Product; import fi.insomnia.bortal.model.Product;
import fi.insomnia.bortal.model.User;
@Local @Local
public interface ProductBeanLocal { public interface ProductBeanLocal {
...@@ -25,7 +25,7 @@ public interface ProductBeanLocal { ...@@ -25,7 +25,7 @@ public interface ProductBeanLocal {
BigDecimal calculateTotal(Product key, BigDecimal value); BigDecimal calculateTotal(Product key, BigDecimal value);
AccountEvent createAccountEvent(Product product, BigDecimal quantity, User user); AccountEvent createAccountEvent(Product product, BigDecimal quantity, EventUser user);
// List<Discount> getActiveDiscounts(Product product, BigDecimal quantity); // List<Discount> getActiveDiscounts(Product product, BigDecimal quantity);
......
...@@ -10,8 +10,8 @@ import java.util.List; ...@@ -10,8 +10,8 @@ import java.util.List;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User;
/** /**
* *
...@@ -32,8 +32,8 @@ public interface RoleBeanLocal { ...@@ -32,8 +32,8 @@ public interface RoleBeanLocal {
public Role setPermissions(Role role, List<IAppPermission> newPerms); public Role setPermissions(Role role, List<IAppPermission> newPerms);
public List<Role> getRoles(User selectedUser); public void saveRoles(EventUser usr, List<Role> usersRoles);
public void saveRoles(User usr, List<Role> usersRoles); List<Role> getRoles(EventUser user);
} }
...@@ -4,7 +4,7 @@ import javax.ejb.Local; ...@@ -4,7 +4,7 @@ import javax.ejb.Local;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
@Local @Local
public interface TestDataBeanLocal { public interface TestDataBeanLocal {
...@@ -13,15 +13,15 @@ public interface TestDataBeanLocal { ...@@ -13,15 +13,15 @@ public interface TestDataBeanLocal {
void generateTestPlaces(EventMap map); void generateTestPlaces(EventMap map);
Bill createBill(User u); Bill createBill(IUser u);
User createUser(); IUser createUser();
// public void printPlacesInfo(); // public void printPlacesInfo();
void generateTestCompos(); void generateTestCompos();
User createAdmin(); IUser createAdmin();
// EventMap readMap(long bytes); // EventMap readMap(long bytes);
......
...@@ -5,6 +5,7 @@ import java.util.List; ...@@ -5,6 +5,7 @@ import java.util.List;
import javax.ejb.Local; import javax.ejb.Local;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -14,17 +15,17 @@ import fi.insomnia.bortal.utilities.SearchResult; ...@@ -14,17 +15,17 @@ import fi.insomnia.bortal.utilities.SearchResult;
@Local @Local
public interface UserBeanLocal { public interface UserBeanLocal {
List<User> getUsers(); List<EventUser> getUsers();
SearchResult<User> getUsers(int page, int pagesize, String sort, String search); SearchResult<User> getUsers(int page, int pagesize, String sort, String search);
User mergeChanges(User currentUser); EventUser mergeChanges(EventUser user);
UserImage uploadImage(User user, String contentType, byte[] image, String filename, String description); UserImage uploadImage(EventUser user, String contentType, byte[] image, String filename, String description);
UserImage findUserImage(int id); UserImage findUserImage(int id);
User createNewUser(User user, String password); void createNewUser(EventUser user, String password);
User findPasswordResetUser(Integer id, String hash); User findPasswordResetUser(Integer id, String hash);
...@@ -32,22 +33,28 @@ public interface UserBeanLocal { ...@@ -32,22 +33,28 @@ public interface UserBeanLocal {
boolean initPasswordReset(String user, String mailpath); boolean initPasswordReset(String user, String mailpath);
List<Role> findUsersRoles(User u);
User findById(Integer integer); User findById(Integer integer);
EventUser findEventUserById(Integer integer);
GroupMembership findToken(String token); GroupMembership findToken(String token);
void createFromToken(User user, String token); void createFromToken(EventUser user, String token);
UserImage findUserimageFORCE(Integer id); UserImage findUserimageFORCE(Integer id);
UserImage saveCroppedImage(UserImage currentImage, int left, int top, int width, int height) throws IOException; UserImage saveCroppedImage(UserImage currentImage, int left, int top, int width, int height) throws IOException;
void createNewUser(User usr); EventUser createNewUser(User usr);
boolean userExists(String login); boolean userExists(String login);
boolean invite(String invitemail, String url); boolean invite(String invitemail, String url);
EventUser mergeEventUserChanges(EventUser shoppingUser);
List<Role> findUsersRoles(EventUser u);
EventUser getEventUser(User user);
} }
package fi.insomnia.bortal.salespoint; package fi.insomnia.bortal.salespoint;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
public class SalesSession { public class SalesSession {
User cashierUser; IUser cashierUser;
User customerUser; IUser customerUser;
Cart shoppingCart; Cart shoppingCart;
} }
...@@ -5,7 +5,7 @@ import java.io.UnsupportedEncodingException; ...@@ -5,7 +5,7 @@ import java.io.UnsupportedEncodingException;
import javax.mail.internet.InternetAddress; import javax.mail.internet.InternetAddress;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
public class MailMessage implements Serializable { public class MailMessage implements Serializable {
/** /**
...@@ -99,7 +99,7 @@ public class MailMessage implements Serializable { ...@@ -99,7 +99,7 @@ public class MailMessage implements Serializable {
return charset; return charset;
} }
public void setTo(User user) { public void setTo(IUser user) {
setToName(user.getWholeName()); setToName(user.getWholeName());
setToAddress(user.getEmail()); setToAddress(user.getEmail());
......
...@@ -64,7 +64,7 @@ public class AccountEvent extends GenericEntity { ...@@ -64,7 +64,7 @@ public class AccountEvent extends GenericEntity {
* to that foodwave. * to that foodwave.
*/ */
@JoinColumn(name = "food_wave_id", referencedColumnName = "id") @JoinColumn(name = "food_wave_id", referencedColumnName = FoodWave.ID_COLUMN)
@ManyToOne @ManyToOne
private FoodWave foodWave; private FoodWave foodWave;
...@@ -72,23 +72,23 @@ public class AccountEvent extends GenericEntity { ...@@ -72,23 +72,23 @@ public class AccountEvent extends GenericEntity {
* The product user has acquired and this this AccountEvent is a reference * The product user has acquired and this this AccountEvent is a reference
* to. * to.
*/ */
@JoinColumn(name = "product_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "product_id", referencedColumnName = Product.ID_COLUMN, nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private Product product; private Product product;
/** /**
* The user that bought the products. * The user that bought the products.
*/ */
@JoinColumn(name = "user_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN, nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private User user; private EventUser user;
/** /**
* Who sold the items to the user. * Who sold the items to the user.
*/ */
@JoinColumn(name = "seller_user_id", referencedColumnName = "id") @JoinColumn(name = "seller_eventuser_id", referencedColumnName = EventUser.ID_COLUMN)
@ManyToOne(optional = true) @ManyToOne(optional = true)
private User seller; private EventUser seller;
/** /**
* What discounts user has for this account event. Some magic is applied to * What discounts user has for this account event. Some magic is applied to
...@@ -111,8 +111,7 @@ public class AccountEvent extends GenericEntity { ...@@ -111,8 +111,7 @@ public class AccountEvent extends GenericEntity {
public AccountEvent() { public AccountEvent() {
} }
public AccountEvent(User u, Product prod, BigDecimal unitPrice, BigDecimal quantity, Calendar eventTime) { public AccountEvent(EventUser u, Product prod, BigDecimal unitPrice, BigDecimal quantity, Calendar eventTime) {
this.setUnitPrice(unitPrice); this.setUnitPrice(unitPrice);
this.setQuantity(quantity); this.setQuantity(quantity);
this.product = prod; this.product = prod;
...@@ -136,11 +135,11 @@ public class AccountEvent extends GenericEntity { ...@@ -136,11 +135,11 @@ public class AccountEvent extends GenericEntity {
this.delivered = delivered; this.delivered = delivered;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User usersId) { public void setUser(EventUser usersId) {
this.user = usersId; this.user = usersId;
} }
...@@ -168,11 +167,11 @@ public class AccountEvent extends GenericEntity { ...@@ -168,11 +167,11 @@ public class AccountEvent extends GenericEntity {
return product; return product;
} }
public void setSeller(User seller) { public void setSeller(EventUser seller) {
this.seller = seller; this.seller = seller;
} }
public User getSeller() { public EventUser getSeller() {
return seller; return seller;
} }
......
...@@ -35,7 +35,7 @@ public class ActionLogMessage extends GenericEntity { ...@@ -35,7 +35,7 @@ public class ActionLogMessage extends GenericEntity {
private Date time = new Date(); private Date time = new Date();
@JoinColumn(name = "user_id") @JoinColumn(name = "user_id")
private User user; private IUser user;
@JoinColumn(name = "crew", nullable = false) @JoinColumn(name = "crew", nullable = false)
private Role crew; private Role crew;
...@@ -60,11 +60,11 @@ public class ActionLogMessage extends GenericEntity { ...@@ -60,11 +60,11 @@ public class ActionLogMessage extends GenericEntity {
this.time = time; this.time = time;
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(IUser user) {
this.user = user; this.user = user;
} }
......
...@@ -27,7 +27,7 @@ public class ActionLogMessageResponse extends GenericEntity { ...@@ -27,7 +27,7 @@ public class ActionLogMessageResponse extends GenericEntity {
private Date time = new Date(); private Date time = new Date();
@JoinColumn(name = "user_id") @JoinColumn(name = "user_id")
private User user; private IUser user;
@Column(name = "message", nullable = false) @Column(name = "message", nullable = false)
private String message; private String message;
...@@ -48,11 +48,11 @@ public class ActionLogMessageResponse extends GenericEntity { ...@@ -48,11 +48,11 @@ public class ActionLogMessageResponse extends GenericEntity {
this.time = time; this.time = time;
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(IUser user) {
this.user = user; this.user = user;
} }
......
...@@ -129,8 +129,8 @@ public class Bill extends GenericEntity { ...@@ -129,8 +129,8 @@ public class Bill extends GenericEntity {
* User who should pay this bill. * User who should pay this bill.
*/ */
@ManyToOne(optional = false) @ManyToOne(optional = false)
@JoinColumn(updatable = false) @JoinColumn(updatable = false, name = "eventuser_id")
private User user; private EventUser user;
private static final Logger logger = LoggerFactory.getLogger(Bill.class); private static final Logger logger = LoggerFactory.getLogger(Bill.class);
...@@ -180,7 +180,7 @@ public class Bill extends GenericEntity { ...@@ -180,7 +180,7 @@ public class Bill extends GenericEntity {
return total; return total;
} }
public Bill(LanEvent event, User user) { public Bill(LanEvent event, EventUser user) {
this(event); this(event);
this.setUser(user); this.setUser(user);
this.setAddr1(user.getFirstnames() + " " + user.getLastname()); this.setAddr1(user.getFirstnames() + " " + user.getLastname());
...@@ -228,11 +228,11 @@ public class Bill extends GenericEntity { ...@@ -228,11 +228,11 @@ public class Bill extends GenericEntity {
this.accountEvent = accoutEventsId; this.accountEvent = accoutEventsId;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User usersId) { public void setUser(EventUser usersId) {
this.user = usersId; this.user = usersId;
} }
......
...@@ -72,9 +72,9 @@ public class CompoEntry extends GenericEntity { ...@@ -72,9 +72,9 @@ public class CompoEntry extends GenericEntity {
@OneToMany(cascade = CascadeType.ALL, mappedBy = "entry") @OneToMany(cascade = CascadeType.ALL, mappedBy = "entry")
private List<CompoEntryParticipant> participants; private List<CompoEntryParticipant> participants;
@JoinColumn(name = "creator_user_id", referencedColumnName = "id") @JoinColumn(name = "creator_eventuser_id", referencedColumnName = EventUser.ID_COLUMN)
@ManyToOne @ManyToOne
private User creator; private EventUser creator;
public CompoEntry() { public CompoEntry() {
super(); super();
...@@ -159,11 +159,11 @@ public class CompoEntry extends GenericEntity { ...@@ -159,11 +159,11 @@ public class CompoEntry extends GenericEntity {
this.compo = composId; this.compo = composId;
} }
public User getCreator() { public EventUser getCreator() {
return creator; return creator;
} }
public void setCreator(User creator) { public void setCreator(EventUser creator) {
this.creator = creator; this.creator = creator;
} }
......
...@@ -36,9 +36,9 @@ public class CompoEntryParticipant extends GenericEntity { ...@@ -36,9 +36,9 @@ public class CompoEntryParticipant extends GenericEntity {
@Temporal(TemporalType.TIMESTAMP) @Temporal(TemporalType.TIMESTAMP)
private Calendar confirmed; private Calendar confirmed;
@JoinColumn(name = "user_id", referencedColumnName = "id", nullable = false, updatable = false) @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN, nullable = false, updatable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private User user; private EventUser user;
public CompoEntry getEntry() { public CompoEntry getEntry() {
return entry; return entry;
...@@ -48,7 +48,7 @@ public class CompoEntryParticipant extends GenericEntity { ...@@ -48,7 +48,7 @@ public class CompoEntryParticipant extends GenericEntity {
this.entry = entry; this.entry = entry;
} }
public CompoEntryParticipant(CompoEntry entry, User participant) { public CompoEntryParticipant(CompoEntry entry, EventUser participant) {
super(); super();
this.entry = entry; this.entry = entry;
this.user = participant; this.user = participant;
...@@ -66,11 +66,11 @@ public class CompoEntryParticipant extends GenericEntity { ...@@ -66,11 +66,11 @@ public class CompoEntryParticipant extends GenericEntity {
this.role = role; this.role = role;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
......
...@@ -36,7 +36,7 @@ public class EventOrganiser extends GenericEntity { ...@@ -36,7 +36,7 @@ public class EventOrganiser extends GenericEntity {
@ManyToOne() @ManyToOne()
@JoinColumn(name = "admin_user_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "admin_user_id", referencedColumnName = "id", nullable = false)
private User admin; private EventUser admin;
@Column(nullable = false, name = "bill_address1") @Column(nullable = false, name = "bill_address1")
private String billAddress1 = ""; private String billAddress1 = "";
...@@ -96,7 +96,7 @@ public class EventOrganiser extends GenericEntity { ...@@ -96,7 +96,7 @@ public class EventOrganiser extends GenericEntity {
/** /**
* @return the admin * @return the admin
*/ */
public User getAdmin() { public EventUser getAdmin() {
return admin; return admin;
} }
...@@ -104,7 +104,7 @@ public class EventOrganiser extends GenericEntity { ...@@ -104,7 +104,7 @@ public class EventOrganiser extends GenericEntity {
* @param admin * @param admin
* the admin to set * the admin to set
*/ */
public void setAdmin(User admin) { public void setAdmin(EventUser admin) {
this.admin = admin; this.admin = admin;
} }
......
package fi.insomnia.bortal.model;
import static javax.persistence.CascadeType.PERSIST;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.OrderBy;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
import fi.insomnia.bortal.enums.Gender;
@Entity
@Table(name = "event_users", uniqueConstraints = @UniqueConstraint(columnNames = { EventUser.USER_ID_COLUMN, EventUser.EVENT_ID_COLUMN }))
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class EventUser extends GenericEntity implements IUser {
protected static final String USER_ID_COLUMN = "user_id";
protected static final String EVENT_ID_COLUMN = "event_id";
@ManyToOne(cascade = PERSIST)
@JoinColumn(nullable = false, name = USER_ID_COLUMN)
private User user;
@ManyToOne
@JoinColumn(nullable = false, name = EVENT_ID_COLUMN)
private LanEvent event;
private static final long serialVersionUID = 6042691271548196815L;
@OneToMany(mappedBy = "voter", cascade = CascadeType.ALL)
private List<Vote> votes;
@OneToMany(mappedBy = "user", cascade = CascadeType.ALL)
private List<UserNote> notes;
@ManyToMany(cascade = CascadeType.ALL)
private List<Role> roles = new ArrayList<Role>();
@OneToMany(mappedBy = "user")
private List<CompoEntryParticipant> compoEntryParticipants;
@OneToMany(mappedBy = "creator")
@OrderBy("id")
private List<CompoEntry> compoEntries;
@OneToMany(mappedBy = "creator", cascade = CascadeType.ALL)
private List<PlaceGroup> placeGroups = new ArrayList<PlaceGroup>();
@OneToMany(mappedBy = "user")
private List<GroupMembership> groupMemberships;
/**
* The places this user has registered into.
*/
@OneToMany(mappedBy = "currentUser", fetch = FetchType.LAZY)
@OrderBy(Place.ID_COLUMN)
private List<Place> currentPlaces;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user")
private List<PrintedCard> printedCards;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user")
@OrderBy(AccountEvent.ID_COLUMN)
private List<AccountEvent> accountEvents;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "user")
@OrderBy(Bill.ID_COLUMN)
private List<Bill> bills;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "seller")
@OrderBy(AccountEvent.ID_COLUMN)
private List<AccountEvent> soldItems;
@OneToMany(mappedBy = "user")
private List<PollAnswer> pollAnswers;
public EventUser()
{
super();
}
public EventUser(User usr, LanEvent evnt) {
super();
this.user = usr;
this.event = evnt;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public LanEvent getEvent() {
return event;
}
public void setEvent(LanEvent event) {
this.event = event;
}
public List<Vote> getVotes() {
return votes;
}
public void setVotes(List<Vote> votes) {
this.votes = votes;
}
public List<UserNote> getNotes() {
return notes;
}
public void setNotes(List<UserNote> notes) {
this.notes = notes;
}
public List<Role> getRoles() {
return roles;
}
public void setRoles(List<Role> roles) {
this.roles = roles;
}
public List<CompoEntryParticipant> getCompoEntryParticipants() {
return compoEntryParticipants;
}
public void setCompoEntryParticipants(List<CompoEntryParticipant> compoEntryParticipants) {
this.compoEntryParticipants = compoEntryParticipants;
}
public List<CompoEntry> getCompoEntries() {
return compoEntries;
}
public void setCompoEntries(List<CompoEntry> compoEntries) {
this.compoEntries = compoEntries;
}
public List<PlaceGroup> getPlaceGroups() {
return placeGroups;
}
public void setPlaceGroups(List<PlaceGroup> placeGroups) {
this.placeGroups = placeGroups;
}
public List<GroupMembership> getGroupMemberships() {
return groupMemberships;
}
public void setGroupMemberships(List<GroupMembership> groupMemberships) {
this.groupMemberships = groupMemberships;
}
public List<Place> getCurrentPlaces() {
return currentPlaces;
}
public void setCurrentPlaces(List<Place> currentPlaces) {
this.currentPlaces = currentPlaces;
}
public List<PrintedCard> getPrintedCards() {
return printedCards;
}
public void setPrintedCards(List<PrintedCard> printedCards) {
this.printedCards = printedCards;
}
public List<AccountEvent> getAccountEvents() {
return accountEvents;
}
public void setAccountEvents(List<AccountEvent> accountEvents) {
this.accountEvents = accountEvents;
}
public List<Bill> getBills() {
return bills;
}
public void setBills(List<Bill> bills) {
this.bills = bills;
}
public List<AccountEvent> getSoldItems() {
return soldItems;
}
public void setSoldItems(List<AccountEvent> soldItems) {
this.soldItems = soldItems;
}
public List<PollAnswer> getPollAnswers() {
return pollAnswers;
}
public void setPollAnswers(List<PollAnswer> pollAnswers) {
this.pollAnswers = pollAnswers;
}
@Override
public void setCreated(Calendar created) {
user.setCreated(created);
}
@Override
public boolean getActive() {
return user.getActive();
}
@Override
public void setActive(boolean active) {
user.setActive(active);
}
@Override
public String getPassword() {
return user.getPassword();
}
@Override
public void setPassword(String password) {
user.setPassword(password);
}
@Override
public String getWholeName() {
return user.getWholeName();
}
@Override
public String getLastname() {
return user.getLastname();
}
@Override
public void setLastname(String lastname) {
user.setLastname(lastname);
}
@Override
public String getFirstnames() {
return user.getFirstnames();
}
@Override
public void setFirstnames(String firstnames) {
user.setFirstnames(firstnames);
}
@Override
public Calendar getBirthday() {
return user.getBirthday();
}
@Override
public void setBirthday(Calendar birthday) {
user.setBirthday(birthday);
}
@Override
public String getNick() {
return user.getNick();
}
@Override
public void setNick(String nick) {
user.setNick(nick);
}
@Override
public String getEmail() {
return user.getEmail();
}
@Override
public void setEmail(String email) {
user.setEmail(email);
}
@Override
public String getAddress() {
return user.getAddress();
}
@Override
public void setAddress(String address) {
user.setAddress(address);
}
@Override
public String getZip() {
return user.getZip();
}
@Override
public void setZip(String zip) {
user.setZip(zip);
}
@Override
public String getTown() {
return user.getTown();
}
@Override
public void setTown(String town) {
user.setTown(town);
}
@Override
public String getPhone() {
return user.getPhone();
}
@Override
public void setPhone(String phone) {
user.setPhone(phone);
}
@Override
public String getLogin() {
return user.getLogin();
}
@Override
public void setLogin(String login) {
user.setLogin(login);
}
@Override
public List<UserImage> getUserImageList() {
return user.getUserImageList();
}
@Override
public void setUserImageList(List<UserImage> userImageList) {
user.setUserImageList(userImageList);
}
@Override
public String getConfirmHash() {
return user.getConfirmHash();
}
@Override
public void setConfirmHash(String confirmHash) {
user.setConfirmHash(confirmHash);
}
@Override
public Calendar getConfirmTime() {
return user.getConfirmTime();
}
@Override
public void setConfirmTime(Calendar confirmTime) {
user.setConfirmTime(confirmTime);
}
@Override
public void resetPassword(String password) {
user.resetPassword(password);
}
@Override
public boolean checkPassword(String plainPassword) {
return user.checkPassword(plainPassword);
}
@Override
public void setSuperadmin(boolean superadmin) {
user.setSuperadmin(superadmin);
}
@Override
public boolean isSuperadmin() {
return user.isSuperadmin();
}
@Override
public void setPostalTown(String postalTown) {
user.setPostalTown(postalTown);
}
@Override
public String getPostalTown() {
return user.getPostalTown();
}
@Override
public void setGender(Gender gender) {
user.setGender(gender);
}
@Override
public Gender getGender() {
return user.getGender();
}
@Override
public void setCurrentImage(UserImage currentImage) {
user.setCurrentImage(currentImage);
}
@Override
public UserImage getCurrentImage() {
return user.getCurrentImage();
}
@Override
public boolean isAnonymous() {
return user.isAnonymous();
}
@Override
public Calendar getCreated() {
return user.getCreated();
}
}
...@@ -53,9 +53,9 @@ public class GroupMembership extends GenericEntity { ...@@ -53,9 +53,9 @@ public class GroupMembership extends GenericEntity {
@JoinColumn(name = "place_reservation_id", referencedColumnName = "id", nullable = true) @JoinColumn(name = "place_reservation_id", referencedColumnName = "id", nullable = true)
private Place placeReservation; private Place placeReservation;
@JoinColumn(name = "user_id", referencedColumnName = "id") @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN)
@ManyToOne @ManyToOne
private User user; private EventUser user;
@Column(name = "entered_event") @Column(name = "entered_event")
@Temporal(TemporalType.TIMESTAMP) @Temporal(TemporalType.TIMESTAMP)
...@@ -111,11 +111,11 @@ public class GroupMembership extends GenericEntity { ...@@ -111,11 +111,11 @@ public class GroupMembership extends GenericEntity {
this.placeReservation = placeReservation; this.placeReservation = placeReservation;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User usersId) { public void setUser(EventUser usersId) {
this.user = usersId; this.user = usersId;
} }
......
package fi.insomnia.bortal.model;
import java.util.Calendar;
import java.util.List;
import fi.insomnia.bortal.enums.Gender;
public interface IUser {
public abstract Calendar getCreated();
public abstract void setCreated(Calendar created);
public abstract boolean getActive();
public abstract void setActive(boolean active);
public abstract String getPassword();
public abstract void setPassword(String password);
public abstract String getWholeName();
public abstract String getLastname();
public abstract void setLastname(String lastname);
public abstract String getFirstnames();
public abstract void setFirstnames(String firstnames);
public abstract Calendar getBirthday();
public abstract void setBirthday(Calendar birthday);
public abstract String getNick();
public abstract void setNick(String nick);
public abstract String getEmail();
public abstract void setEmail(String email);
public abstract String getAddress();
public abstract void setAddress(String address);
public abstract String getZip();
public abstract void setZip(String zip);
public abstract String getTown();
public abstract void setTown(String town);
public abstract String getPhone();
public abstract void setPhone(String phone);
public abstract String getLogin();
public abstract void setLogin(String login);
public abstract List<UserImage> getUserImageList();
public abstract void setUserImageList(List<UserImage> userImageList);
/**
* @return the confirmHash
*/
public abstract String getConfirmHash();
/**
* @param confirmHash
* the confirmHash to set
*/
public abstract void setConfirmHash(String confirmHash);
/**
* @return the confirmTime
*/
public abstract Calendar getConfirmTime();
/**
* @param confirmTime
* the confirmTime to set
*/
public abstract void setConfirmTime(Calendar confirmTime);
public abstract void resetPassword(String password);
public abstract boolean checkPassword(String plainPassword);
public abstract void setSuperadmin(boolean superadmin);
public abstract boolean isSuperadmin();
public abstract void setPostalTown(String postalTown);
public abstract String getPostalTown();
public abstract void setGender(Gender gender);
public abstract Gender getGender();
public abstract void setCurrentImage(UserImage currentImage);
public abstract UserImage getCurrentImage();
public abstract boolean isAnonymous();
}
\ No newline at end of file
...@@ -13,8 +13,6 @@ import javax.persistence.Entity; ...@@ -13,8 +13,6 @@ import javax.persistence.Entity;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.Lob; import javax.persistence.Lob;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table; import javax.persistence.Table;
import javax.persistence.Temporal; import javax.persistence.Temporal;
...@@ -26,10 +24,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType; ...@@ -26,10 +24,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType;
*/ */
@Entity @Entity
@Table(name = "event_log") @Table(name = "event_log")
@NamedQueries({
@NamedQuery(name = "LogEntry.findAll", query = "SELECT l FROM LogEntry l"),
@NamedQuery(name = "LogEntry.findByTime", query = "SELECT l FROM LogEntry l WHERE l.time = :time"),
@NamedQuery(name = "LogEntry.findByDescription", query = "SELECT l FROM LogEntry l WHERE l.description = :description") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS) @OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class LogEntry extends GenericEntity { public class LogEntry extends GenericEntity {
......
...@@ -46,7 +46,7 @@ public class News extends GenericEntity { ...@@ -46,7 +46,7 @@ public class News extends GenericEntity {
@ManyToOne() @ManyToOne()
@JoinColumn(nullable = false) @JoinColumn(nullable = false)
private User creator; private EventUser creator;
public Date getPublish() { public Date getPublish() {
return publish; return publish;
...@@ -82,7 +82,7 @@ public class News extends GenericEntity { ...@@ -82,7 +82,7 @@ public class News extends GenericEntity {
this.priority = priority; this.priority = priority;
} }
public News(NewsGroup newsgroup, User creator) { public News(NewsGroup newsgroup, EventUser creator) {
super(); super();
this.creator = creator; this.creator = creator;
group = newsgroup; group = newsgroup;
...@@ -128,11 +128,11 @@ public class News extends GenericEntity { ...@@ -128,11 +128,11 @@ public class News extends GenericEntity {
this.group = newsGroupsId; this.group = newsGroupsId;
} }
public User getCreator() { public EventUser getCreator() {
return creator; return creator;
} }
public void setCreator(User creator) { public void setCreator(EventUser creator) {
this.creator = creator; this.creator = creator;
} }
......
package fi.insomnia.bortal.model;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.JoinColumn;
import javax.persistence.JoinTable;
import javax.persistence.ManyToMany;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.UniqueConstraint;
import org.eclipse.persistence.annotations.OptimisticLocking;
import org.eclipse.persistence.annotations.OptimisticLockingType;
/**
* Entity implementation class for Entity: OrganizationalRole
*
*/
@Entity
@Table(name = "org_roles", uniqueConstraints = { @UniqueConstraint(columnNames = { OrgRole.NAME_COLUMN }) })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class OrgRole extends GenericEntity {
private static final long serialVersionUID = 1L;
protected static final String NAME_COLUMN = "role_name";
@Column(name = NAME_COLUMN, nullable = false)
private String name;
@ManyToMany()
@JoinTable(name = "org_role_memberships",
joinColumns = { @JoinColumn(name = "org_role_id", referencedColumnName = OrgRole.ID_COLUMN) },
inverseJoinColumns = { @JoinColumn(name = "user_id", referencedColumnName = User.ID_COLUMN) })
private List<User> users;
@ManyToMany()
@JoinTable(name = "org_role_parents",
joinColumns = { @JoinColumn(name = "parent_id", referencedColumnName = OrgRole.ID_COLUMN) },
inverseJoinColumns = { @JoinColumn(name = "org_role_id", referencedColumnName = OrgRole.ID_COLUMN) })
private List<OrgRole> parents = new ArrayList<OrgRole>();
@ManyToMany(mappedBy = "parents")
private List<OrgRole> children = new ArrayList<OrgRole>();
@Column(nullable = false)
@ManyToOne()
private EventOrganiser eventOrganizer;
@OneToMany
private List<Role> eventRoles;
public OrgRole() {
super();
}
public List<User> getUsers() {
return this.users;
}
public void setUsers(List<User> users) {
this.users = users;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public List<OrgRole> getParents() {
return parents;
}
public void setParents(List<OrgRole> parents) {
this.parents = parents;
}
public List<OrgRole> getChildren() {
return children;
}
public void setChildren(List<OrgRole> children) {
this.children = children;
}
public EventOrganiser getEventOrganizer() {
return eventOrganizer;
}
public void setEventOrganizer(EventOrganiser eventOrganizer) {
this.eventOrganizer = eventOrganizer;
}
public List<Role> getEventRoles() {
return eventRoles;
}
public void setEventRoles(List<Role> eventRoles) {
this.eventRoles = eventRoles;
}
}
...@@ -21,20 +21,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType; ...@@ -21,20 +21,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType;
*/ */
@Entity @Entity
@Table(name = "places") @Table(name = "places")
// @NamedQueries({
// @NamedQuery(name = "Place.findAll", query = "SELECT p FROM Place p"),
// @NamedQuery(name = "Place.findByDescription", query =
// "SELECT p FROM Place p WHERE p.description = :description"),
// @NamedQuery(name = "Place.findByName", query =
// "SELECT p FROM Place p WHERE p.name = :name"),
// @NamedQuery(name = "Place.findByMapX", query =
// "SELECT p FROM Place p WHERE p.mapX = :mapX"),
// @NamedQuery(name = "Place.findByMapY", query =
// "SELECT p FROM Place p WHERE p.mapY = :mapY"),
// @NamedQuery(name = "Place.findByDetails", query =
// "SELECT p FROM Place p WHERE p.details = :details"),
// @NamedQuery(name = "Place.findByCode", query =
// "SELECT p FROM Place p WHERE p.code = :code") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS) @OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Place extends GenericEntity { public class Place extends GenericEntity {
...@@ -80,25 +66,25 @@ public class Place extends GenericEntity { ...@@ -80,25 +66,25 @@ public class Place extends GenericEntity {
private PlaceGroup group; private PlaceGroup group;
@ManyToOne @ManyToOne
@JoinColumn(name = "provided_role_id", referencedColumnName = "id") @JoinColumn(name = "provided_role_id", referencedColumnName = Role.ID_COLUMN)
private Role providesRole; private Role providesRole;
@JoinColumn(name = "map_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "map_id", referencedColumnName = EventMap.ID_COLUMN, nullable = false)
@ManyToOne(optional = false, cascade = CascadeType.ALL) @ManyToOne(optional = false, cascade = CascadeType.ALL)
private EventMap map; private EventMap map;
/** /**
* Which ticket type is this place sold as * Which ticket type is this place sold as
*/ */
@JoinColumn(name = "products_id", referencedColumnName = "id") @JoinColumn(name = "products_id", referencedColumnName = Product.ID_COLUMN)
@ManyToOne() @ManyToOne()
private Product product; private Product product;
/** /**
* Who is the current currentUser (mapped with code printed on the place) of * Who is the current currentUser (mapped with code printed on the place) of
* the place. Used in Vectorama currentUser tracking. * the place. Used in Vectorama currentUser tracking.
*/ */
@JoinColumn(name = "current_user_id", referencedColumnName = "id") @JoinColumn(name = "current_eventuser_id", referencedColumnName = EventUser.ID_COLUMN)
@ManyToOne @ManyToOne
private User currentUser; private EventUser currentUser;
public Place() { public Place() {
super(); super();
...@@ -184,11 +170,11 @@ public class Place extends GenericEntity { ...@@ -184,11 +170,11 @@ public class Place extends GenericEntity {
this.product = productsId; this.product = productsId;
} }
public User getCurrentUser() { public EventUser getCurrentUser() {
return currentUser; return currentUser;
} }
public void setCurrentUser(User usersId) { public void setCurrentUser(EventUser usersId) {
this.currentUser = usersId; this.currentUser = usersId;
} }
...@@ -239,7 +225,7 @@ public class Place extends GenericEntity { ...@@ -239,7 +225,7 @@ public class Place extends GenericEntity {
* *
* @return Is the place reserved ( not bought for user) * @return Is the place reserved ( not bought for user)
*/ */
public boolean isReservedFor(User u) { public boolean isReservedFor(IUser u) {
return (u.equals(getCurrentUser()) && getGroup() == null); return (u.equals(getCurrentUser()) && getGroup() == null);
} }
......
...@@ -14,8 +14,6 @@ import javax.persistence.Entity; ...@@ -14,8 +14,6 @@ import javax.persistence.Entity;
import javax.persistence.JoinColumn; import javax.persistence.JoinColumn;
import javax.persistence.Lob; import javax.persistence.Lob;
import javax.persistence.ManyToOne; import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.OneToMany; import javax.persistence.OneToMany;
import javax.persistence.OrderBy; import javax.persistence.OrderBy;
import javax.persistence.Table; import javax.persistence.Table;
...@@ -30,16 +28,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType; ...@@ -30,16 +28,6 @@ import org.eclipse.persistence.annotations.OptimisticLockingType;
*/ */
@Entity @Entity
@Table(name = "groups") @Table(name = "groups")
@NamedQueries({
@NamedQuery(name = "PlaceGroup.findAll", query = "SELECT p FROM PlaceGroup p"),
@NamedQuery(name = "PlaceGroup.findByCreated", query = "SELECT p FROM PlaceGroup p WHERE p.created = :created"),
// @NamedQuery(name = "PlaceGroup.findByEdited", query =
// "SELECT p FROM PlaceGroup p WHERE p.edited = :edited"),
@NamedQuery(name = "PlaceGroup.findByCode", query = "SELECT p FROM PlaceGroup p WHERE p.code = :code"),
@NamedQuery(name = "PlaceGroup.findByName", query = "SELECT p FROM PlaceGroup p WHERE p.name = :name"),
@NamedQuery(name = "PlaceGroup.findByActive", query = "SELECT p FROM PlaceGroup p WHERE p.active = :active"),
@NamedQuery(name = "PlaceGroup.findByDetails", query = "SELECT p FROM PlaceGroup p WHERE p.details = :details") })
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS) @OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class PlaceGroup extends GenericEntity { public class PlaceGroup extends GenericEntity {
...@@ -72,9 +60,9 @@ public class PlaceGroup extends GenericEntity { ...@@ -72,9 +60,9 @@ public class PlaceGroup extends GenericEntity {
@Column(name = "group_details") @Column(name = "group_details")
private String details; private String details;
@JoinColumn(name = "creator_user_id", referencedColumnName = "id") @JoinColumn(name = "creator_eventuser_id", referencedColumnName = EventUser.ID_COLUMN)
@ManyToOne @ManyToOne
private User creator; private EventUser creator;
@OneToMany(cascade = CascadeType.ALL, mappedBy = "placeGroup") @OneToMany(cascade = CascadeType.ALL, mappedBy = "placeGroup")
private List<GroupMembership> members = new ArrayList<GroupMembership>(); private List<GroupMembership> members = new ArrayList<GroupMembership>();
...@@ -143,11 +131,11 @@ public class PlaceGroup extends GenericEntity { ...@@ -143,11 +131,11 @@ public class PlaceGroup extends GenericEntity {
this.details = groupDetails; this.details = groupDetails;
} }
public User getCreator() { public EventUser getCreator() {
return creator; return creator;
} }
public void setCreator(User groupCreator) { public void setCreator(EventUser groupCreator) {
this.creator = groupCreator; this.creator = groupCreator;
} }
......
...@@ -30,12 +30,12 @@ public class PollAnswer extends GenericEntity implements Serializable { ...@@ -30,12 +30,12 @@ public class PollAnswer extends GenericEntity implements Serializable {
private Boolean answerBoolean = false; private Boolean answerBoolean = false;
@ManyToOne @ManyToOne
@JoinColumn(name = "possible_answer_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "possible_answer_id", referencedColumnName = PossibleAnswer.ID_COLUMN, nullable = false)
private PossibleAnswer choice; private PossibleAnswer choice;
@ManyToOne @ManyToOne
@JoinColumn(name = "user_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN, nullable = false)
private User user; private EventUser user;
public PollAnswer() { public PollAnswer() {
super(); super();
...@@ -83,11 +83,11 @@ public class PollAnswer extends GenericEntity implements Serializable { ...@@ -83,11 +83,11 @@ public class PollAnswer extends GenericEntity implements Serializable {
return choice; return choice;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
......
...@@ -66,15 +66,15 @@ public class PrintedCard extends GenericEntity { ...@@ -66,15 +66,15 @@ public class PrintedCard extends GenericEntity {
@ManyToOne @ManyToOne
private Location currentLocation; private Location currentLocation;
@JoinColumn(name = "user_id", referencedColumnName = "id", nullable = false) @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN, nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private User user; private EventUser user;
@JoinColumn(nullable = false, name = "card_template_id", referencedColumnName = CardTemplate.ID_COLUMN) @JoinColumn(nullable = false, name = "card_template_id", referencedColumnName = CardTemplate.ID_COLUMN)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private CardTemplate template; private CardTemplate template;
public PrintedCard(User usr, CardTemplate templ, Calendar printTime, boolean cardEnabled) { public PrintedCard(EventUser usr, CardTemplate templ, Calendar printTime, boolean cardEnabled) {
super(); super();
this.event = templ.getEvent(); this.event = templ.getEvent();
this.template = templ; this.template = templ;
...@@ -144,11 +144,11 @@ public class PrintedCard extends GenericEntity { ...@@ -144,11 +144,11 @@ public class PrintedCard extends GenericEntity {
this.currentLocation = currentLocation; this.currentLocation = currentLocation;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User usersId) { public void setUser(EventUser usersId) {
this.user = usersId; this.user = usersId;
} }
...@@ -173,9 +173,9 @@ public class PrintedCard extends GenericEntity { ...@@ -173,9 +173,9 @@ public class PrintedCard extends GenericEntity {
@Override @Override
public int compare(PrintedCard o1, PrintedCard o2) { public int compare(PrintedCard o1, PrintedCard o2) {
int ret = o2.getGamepoints().compareTo(o1.getGamepoints()); int ret = o2.getGamepoints().compareTo(o1.getGamepoints());
if (ret == 0 && o1.getUser().getNick() != null && o2.getUser().getNick() != null) if (ret == 0 && o1.getUser().getUser().getNick() != null && o2.getUser().getUser().getNick() != null)
{ {
ret = o1.getUser().getNick().compareTo(o2.getUser().getNick()); ret = o1.getUser().getUser().getNick().compareTo(o2.getUser().getUser().getNick());
} }
return ret; return ret;
} }
......
...@@ -31,6 +31,8 @@ public class Role extends GenericEntity { ...@@ -31,6 +31,8 @@ public class Role extends GenericEntity {
protected static final String NAME_COLUMN = "role_name"; protected static final String NAME_COLUMN = "role_name";
protected static final String EVENT_ID_COLUMN = "event_id"; protected static final String EVENT_ID_COLUMN = "event_id";
protected static final String ORG_ROLE_ID_COLUMN = "org_role_id";
public static final Role EMPTY_ROLE = new Role("----"); public static final Role EMPTY_ROLE = new Role("----");
...@@ -40,8 +42,8 @@ public class Role extends GenericEntity { ...@@ -40,8 +42,8 @@ public class Role extends GenericEntity {
@ManyToMany() @ManyToMany()
@JoinTable(name = "role_memberships", @JoinTable(name = "role_memberships",
joinColumns = { @JoinColumn(name = "role_id", referencedColumnName = Role.ID_COLUMN) }, joinColumns = { @JoinColumn(name = "role_id", referencedColumnName = Role.ID_COLUMN) },
inverseJoinColumns = { @JoinColumn(name = "user_id", referencedColumnName = User.ID_COLUMN) }) inverseJoinColumns = { @JoinColumn(name = "eventuser_id", referencedColumnName = EventUser.ID_COLUMN) })
private List<User> users; private List<EventUser> users;
@ManyToMany(mappedBy = "parents") @ManyToMany(mappedBy = "parents")
private List<Role> children = new ArrayList<Role>(); private List<Role> children = new ArrayList<Role>();
...@@ -74,6 +76,10 @@ public class Role extends GenericEntity { ...@@ -74,6 +76,10 @@ public class Role extends GenericEntity {
@ManyToOne @ManyToOne
@JoinColumn(name = EVENT_ID_COLUMN, nullable = false) @JoinColumn(name = EVENT_ID_COLUMN, nullable = false)
private LanEvent event; private LanEvent event;
@ManyToOne
@JoinColumn(name = ORG_ROLE_ID_COLUMN)
private OrgRole orgRole;
public Role() { public Role() {
super(); super();
...@@ -109,14 +115,6 @@ public class Role extends GenericEntity { ...@@ -109,14 +115,6 @@ public class Role extends GenericEntity {
this.cardTemplate = cardTemplatesId; this.cardTemplate = cardTemplatesId;
} }
public void setUsers(List<User> users) {
this.users = users;
}
public List<User> getUsers() {
return users;
}
public void setDiscounts(List<Discount> discounts) { public void setDiscounts(List<Discount> discounts) {
this.discounts = discounts; this.discounts = discounts;
} }
...@@ -190,4 +188,20 @@ public class Role extends GenericEntity { ...@@ -190,4 +188,20 @@ public class Role extends GenericEntity {
return permissions; return permissions;
} }
public List<EventUser> getUsers() {
return users;
}
public void setUsers(List<EventUser> users) {
this.users = users;
}
public OrgRole getOrgRole() {
return orgRole;
}
public void setOrgRole(OrgRole orgRole) {
this.orgRole = orgRole;
}
} }
...@@ -14,13 +14,11 @@ public class UserNote extends GenericEntity { ...@@ -14,13 +14,11 @@ public class UserNote extends GenericEntity {
private static final long serialVersionUID = 6128095532481826770L; private static final long serialVersionUID = 6128095532481826770L;
@ManyToOne private static final String EVENTUSER_ID_COLUMN = "eventuser_id";
@JoinColumn(nullable = false)
private User user;
@ManyToOne @ManyToOne
@JoinColumn(nullable = false) @JoinColumn(nullable = false, name = EVENTUSER_ID_COLUMN)
private LanEvent event; private EventUser user;
@Lob @Lob
private String content; private String content;
...@@ -30,22 +28,6 @@ public class UserNote extends GenericEntity { ...@@ -30,22 +28,6 @@ public class UserNote extends GenericEntity {
@Enumerated(EnumType.STRING) @Enumerated(EnumType.STRING)
private UserNoteType notetype; private UserNoteType notetype;
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
public LanEvent getEvent() {
return event;
}
public void setEvent(LanEvent event) {
this.event = event;
}
public String getContent() { public String getContent() {
return content; return content;
} }
...@@ -62,4 +44,12 @@ public class UserNote extends GenericEntity { ...@@ -62,4 +44,12 @@ public class UserNote extends GenericEntity {
this.notetype = notetype; this.notetype = notetype;
} }
public EventUser getUser() {
return user;
}
public void setUser(EventUser user) {
this.user = user;
}
} }
...@@ -27,7 +27,7 @@ import org.eclipse.persistence.annotations.OptimisticLockingType; ...@@ -27,7 +27,7 @@ import org.eclipse.persistence.annotations.OptimisticLockingType;
@OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS) @OptimisticLocking(type = OptimisticLockingType.CHANGED_COLUMNS)
public class Vote extends GenericEntity { public class Vote extends GenericEntity {
protected static final String VOTER_USER_ID = "voter_user_id"; protected static final String VOTER_USER_ID = "voter_userevent_id";
protected static final String ENTRY_ID = "entry_id"; protected static final String ENTRY_ID = "entry_id";
private static final long serialVersionUID = 2L; private static final long serialVersionUID = 2L;
...@@ -42,13 +42,13 @@ public class Vote extends GenericEntity { ...@@ -42,13 +42,13 @@ public class Vote extends GenericEntity {
@Temporal(TemporalType.TIMESTAMP) @Temporal(TemporalType.TIMESTAMP)
private Calendar time; private Calendar time;
@JoinColumn(name = ENTRY_ID, referencedColumnName = "id", nullable = false) @JoinColumn(name = ENTRY_ID, referencedColumnName = CompoEntry.ID_COLUMN, nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private CompoEntry compoEntry; private CompoEntry compoEntry;
@JoinColumn(name = VOTER_USER_ID, referencedColumnName = "id", nullable = false) @JoinColumn(name = VOTER_USER_ID, referencedColumnName = EventUser.ID_COLUMN, nullable = false)
@ManyToOne(optional = false) @ManyToOne(optional = false)
private User voter; private EventUser voter;
public Vote(LanEvent event, Calendar voteTime) { public Vote(LanEvent event, Calendar voteTime) {
super(); super();
...@@ -90,21 +90,6 @@ public class Vote extends GenericEntity { ...@@ -90,21 +90,6 @@ public class Vote extends GenericEntity {
this.compoEntry = compoEntry; this.compoEntry = compoEntry;
} }
/**
* @return the voter
*/
public User getVoter() {
return voter;
}
/**
* @param voter
* the voter to set
*/
public void setVoter(User voter) {
this.voter = voter;
}
public String getMessage() { public String getMessage() {
return message; return message;
} }
...@@ -112,4 +97,13 @@ public class Vote extends GenericEntity { ...@@ -112,4 +97,13 @@ public class Vote extends GenericEntity {
public void setMessage(String message) { public void setMessage(String message) {
this.message = message; this.message = message;
} }
public EventUser getVoter() {
return voter;
}
public void setVoter(EventUser voter) {
this.voter = voter;
}
} }
...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.PermissionBeanLocal; ...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.PermissionBeanLocal;
import fi.insomnia.bortal.beans.RoleBeanLocal; import fi.insomnia.bortal.beans.RoleBeanLocal;
import fi.insomnia.bortal.clientutils.BortalLocalContextHolder; import fi.insomnia.bortal.clientutils.BortalLocalContextHolder;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
@Named() @Named()
@RequestScoped @RequestScoped
...@@ -85,7 +85,7 @@ public class SessionHandler { ...@@ -85,7 +85,7 @@ public class SessionHandler {
} }
public User getCurrentUser() { public IUser getCurrentUser() {
return permbean.getCurrentUser(); return permbean.getCurrentUser();
} }
......
...@@ -22,7 +22,7 @@ import fi.insomnia.bortal.beans.PermissionBeanLocal; ...@@ -22,7 +22,7 @@ import fi.insomnia.bortal.beans.PermissionBeanLocal;
import fi.insomnia.bortal.beans.RoleBeanLocal; import fi.insomnia.bortal.beans.RoleBeanLocal;
import fi.insomnia.bortal.clientutils.BortalLocalContextHolder; import fi.insomnia.bortal.clientutils.BortalLocalContextHolder;
import fi.insomnia.bortal.enums.apps.IAppPermission; import fi.insomnia.bortal.enums.apps.IAppPermission;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
/** /**
* *
...@@ -125,7 +125,7 @@ public class SessionHandler { ...@@ -125,7 +125,7 @@ public class SessionHandler {
} }
public User getCurrentUser() { public IUser getCurrentUser() {
return permbean.getCurrentUser(); return permbean.getCurrentUser();
} }
......
...@@ -33,8 +33,8 @@ import fi.insomnia.bortal.beans.PlaceMapBeanLocal; ...@@ -33,8 +33,8 @@ import fi.insomnia.bortal.beans.PlaceMapBeanLocal;
import fi.insomnia.bortal.beans.SecurityLogType; import fi.insomnia.bortal.beans.SecurityLogType;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.User;
/** /**
* *
...@@ -149,7 +149,7 @@ public class PlaceMap extends HttpServlet { ...@@ -149,7 +149,7 @@ public class PlaceMap extends HttpServlet {
// logger.debug("Got map object {}", map); // logger.debug("Got map object {}", map);
List<Place> places = map.getPlaces(); List<Place> places = map.getPlaces();
User user = permbean.getCurrentUser(); IUser user = permbean.getCurrentUser();
// List<Place> selectedPlaces = placemapBean.findSelectedPlaces(map); // List<Place> selectedPlaces = placemapBean.findSelectedPlaces(map);
BufferedImage image = ImageIO.read(new ByteArrayInputStream(map BufferedImage image = ImageIO.read(new ByteArrayInputStream(map
...@@ -241,7 +241,7 @@ public class PlaceMap extends HttpServlet { ...@@ -241,7 +241,7 @@ public class PlaceMap extends HttpServlet {
private static final Color LOCKED_COLOR = Color.DARK_GRAY; private static final Color LOCKED_COLOR = Color.DARK_GRAY;
private static final int BORDER_WIDTH = 2; private static final int BORDER_WIDTH = 2;
private static void drawPlace(Place p, Graphics2D g, User user) { private static void drawPlace(Place p, Graphics2D g, IUser user) {
if (p.isDisabled()) { if (p.isDisabled()) {
return; return;
} }
......
...@@ -110,7 +110,7 @@ public class UploadServlet extends HttpServlet { ...@@ -110,7 +110,7 @@ public class UploadServlet extends HttpServlet {
String type = request.getParameter("type"); String type = request.getParameter("type");
if (type.equals("userimage")) { if (type.equals("userimage")) {
logger.debug("Uploading userimage for user {}"); logger.debug("Uploading userimage for user {}");
UserImage userimage = userbean.uploadImage(userbean.findById(destId), contenttype, imagedata, filename, description); UserImage userimage = userbean.uploadImage(userbean.getEventUser(userbean.findById(destId)), contenttype, imagedata, filename, description);
utilbean.convertImage(userimage.getUser()); utilbean.convertImage(userimage.getUser());
} else if (type.equals("mapimage")) { } else if (type.equals("mapimage")) {
eventmapbean.sendImage(destId, imagedata); eventmapbean.sendImage(destId, imagedata);
......
...@@ -21,8 +21,8 @@ import fi.insomnia.bortal.beans.CardTemplateBeanLocal; ...@@ -21,8 +21,8 @@ import fi.insomnia.bortal.beans.CardTemplateBeanLocal;
import fi.insomnia.bortal.beans.PermissionBeanLocal; import fi.insomnia.bortal.beans.PermissionBeanLocal;
import fi.insomnia.bortal.beans.UserBeanLocal; import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.User;
/** /**
* Servlet implementation class UploadServlet * Servlet implementation class UploadServlet
...@@ -86,7 +86,7 @@ public class UserCardServlet extends GenericImageServlet { ...@@ -86,7 +86,7 @@ public class UserCardServlet extends GenericImageServlet {
private byte[] mkCard(PrintedCard card) throws IOException { private byte[] mkCard(PrintedCard card) throws IOException {
User user = card.getUser(); IUser user = card.getUser();
BufferedImage face = ImageIO.read(new ByteArrayInputStream(user.getCurrentImage().getImageData())); BufferedImage face = ImageIO.read(new ByteArrayInputStream(user.getCurrentImage().getImageData()));
......
...@@ -6,7 +6,7 @@ import javax.inject.Inject; ...@@ -6,7 +6,7 @@ import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
import fi.insomnia.bortal.beans.NewsBeanLocal; import fi.insomnia.bortal.beans.NewsBeanLocal;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -19,6 +19,6 @@ public class GameView extends GenericCDIView { ...@@ -19,6 +19,6 @@ public class GameView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private IUser user;
} }
...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.PlaceBeanLocal; ...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.PlaceBeanLocal;
import fi.insomnia.bortal.beans.PlaceMapBeanLocal; import fi.insomnia.bortal.beans.PlaceMapBeanLocal;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -31,7 +31,7 @@ public class MapView extends GenericCDIView { ...@@ -31,7 +31,7 @@ public class MapView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
private EventMap activeMap; private EventMap activeMap;
...@@ -106,11 +106,11 @@ public class MapView extends GenericCDIView { ...@@ -106,11 +106,11 @@ public class MapView extends GenericCDIView {
this.activeMap = activeMap; this.activeMap = activeMap;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
} }
...@@ -20,6 +20,7 @@ import fi.insomnia.bortal.beans.UserBeanLocal; ...@@ -20,6 +20,7 @@ import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.exceptions.BortalCatchableException; import fi.insomnia.bortal.exceptions.BortalCatchableException;
import fi.insomnia.bortal.model.EventMap; import fi.insomnia.bortal.model.EventMap;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
...@@ -45,7 +46,7 @@ public class PlaceView extends GenericCDIView { ...@@ -45,7 +46,7 @@ public class PlaceView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
@Inject @Inject
private EventMap currentMap; private EventMap currentMap;
...@@ -135,8 +136,8 @@ public class PlaceView extends GenericCDIView { ...@@ -135,8 +136,8 @@ public class PlaceView extends GenericCDIView {
public String reserveForUser() { public String reserveForUser() {
try { try {
User user = userlist.getRowData(); EventUser user = userbean.getEventUser(userlist.getRowData());
if (placebean.reservePlace(place, userlist.getRowData())) { if (placebean.reservePlace(place, user)) {
placebean.buySelectedPlaces(user); placebean.buySelectedPlaces(user);
} }
......
...@@ -11,10 +11,10 @@ import javax.inject.Named; ...@@ -11,10 +11,10 @@ import javax.inject.Named;
import fi.insomnia.bortal.beans.PlaceGroupBeanLocal; import fi.insomnia.bortal.beans.PlaceGroupBeanLocal;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.Place; import fi.insomnia.bortal.model.Place;
import fi.insomnia.bortal.model.PlaceGroup; import fi.insomnia.bortal.model.PlaceGroup;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -28,7 +28,7 @@ public class PlacegroupView extends GenericCDIView { ...@@ -28,7 +28,7 @@ public class PlacegroupView extends GenericCDIView {
// private UserView userview; // private UserView userview;
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
@EJB @EJB
private transient PlaceGroupBeanLocal placegroupBean; private transient PlaceGroupBeanLocal placegroupBean;
...@@ -122,4 +122,12 @@ public class PlacegroupView extends GenericCDIView { ...@@ -122,4 +122,12 @@ public class PlacegroupView extends GenericCDIView {
public Place getPlace() { public Place getPlace() {
return place; return place;
} }
public EventUser getUser() {
return user;
}
public void setUser(EventUser user) {
this.user = user;
}
} }
...@@ -7,7 +7,7 @@ import javax.inject.Named; ...@@ -7,7 +7,7 @@ import javax.inject.Named;
import fi.insomnia.bortal.beans.PlaceGroupBeanLocal; import fi.insomnia.bortal.beans.PlaceGroupBeanLocal;
import fi.insomnia.bortal.enums.apps.MapPermission; import fi.insomnia.bortal.enums.apps.MapPermission;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -21,7 +21,7 @@ public class TokenView extends GenericCDIView { ...@@ -21,7 +21,7 @@ public class TokenView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
@EJB @EJB
private transient PlaceGroupBeanLocal placegroupbean; private transient PlaceGroupBeanLocal placegroupbean;
......
...@@ -12,9 +12,9 @@ import javax.inject.Named; ...@@ -12,9 +12,9 @@ import javax.inject.Named;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.beans.EventOrganiserBeanLocal; import fi.insomnia.bortal.beans.EventOrganiserBeanLocal;
import fi.insomnia.bortal.model.EventOrganiser; import fi.insomnia.bortal.model.EventOrganiser;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.LanEvent; import fi.insomnia.bortal.model.LanEvent;
import fi.insomnia.bortal.model.LanEventDomain; import fi.insomnia.bortal.model.LanEventDomain;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.annotations.LoggedIn; import fi.insomnia.bortal.web.annotations.LoggedIn;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -31,7 +31,7 @@ public class EventOrgView extends GenericCDIView { ...@@ -31,7 +31,7 @@ public class EventOrgView extends GenericCDIView {
@LoggedIn @LoggedIn
@Inject @Inject
private User user; private IUser user;
private EventOrganiser eventorg; private EventOrganiser eventorg;
private Integer orgId; private Integer orgId;
...@@ -145,11 +145,11 @@ public class EventOrgView extends GenericCDIView { ...@@ -145,11 +145,11 @@ public class EventOrgView extends GenericCDIView {
return orgId; return orgId;
} }
public void setUser(User user) { public void setUser(IUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
......
...@@ -13,7 +13,7 @@ import fi.insomnia.bortal.beans.BillBeanLocal; ...@@ -13,7 +13,7 @@ import fi.insomnia.bortal.beans.BillBeanLocal;
import fi.insomnia.bortal.bortal.views.BillSummary; import fi.insomnia.bortal.bortal.views.BillSummary;
import fi.insomnia.bortal.enums.apps.BillPermission; import fi.insomnia.bortal.enums.apps.BillPermission;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -28,7 +28,7 @@ public class BillListView extends GenericCDIView { ...@@ -28,7 +28,7 @@ public class BillListView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private IUser user;
@EJB @EJB
private transient BillBeanLocal billbean; private transient BillBeanLocal billbean;
......
...@@ -6,6 +6,7 @@ import javax.inject.Inject; ...@@ -6,6 +6,7 @@ import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
import fi.insomnia.bortal.beans.UserBeanLocal; import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.GroupMembership; import fi.insomnia.bortal.model.GroupMembership;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -22,7 +23,7 @@ public class InviteAcceptView extends GenericCDIView { ...@@ -22,7 +23,7 @@ public class InviteAcceptView extends GenericCDIView {
@Inject @Inject
private UserView userview; private UserView userview;
private User user; private EventUser user;
private boolean done = false; private boolean done = false;
@EJB @EJB
...@@ -40,7 +41,7 @@ public class InviteAcceptView extends GenericCDIView { ...@@ -40,7 +41,7 @@ public class InviteAcceptView extends GenericCDIView {
this.addFaceMessage("invite.notFound"); this.addFaceMessage("invite.notFound");
done = true; done = true;
} else if (user == null) { } else if (user == null) {
user = new User(); user = new EventUser(new User(), null);
userview.setUser(user); userview.setUser(user);
super.beginConversation(); super.beginConversation();
} }
...@@ -65,11 +66,11 @@ public class InviteAcceptView extends GenericCDIView { ...@@ -65,11 +66,11 @@ public class InviteAcceptView extends GenericCDIView {
return token; return token;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
......
...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.EventBeanLocal; ...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.beans.ProductBeanLocal; import fi.insomnia.bortal.beans.ProductBeanLocal;
import fi.insomnia.bortal.enums.apps.ShopPermission; import fi.insomnia.bortal.enums.apps.ShopPermission;
import fi.insomnia.bortal.model.Bill; import fi.insomnia.bortal.model.Bill;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
import fi.insomnia.bortal.web.helpers.ProductShopItem; import fi.insomnia.bortal.web.helpers.ProductShopItem;
...@@ -42,7 +42,7 @@ public class ProductShopView extends GenericCDIView { ...@@ -42,7 +42,7 @@ public class ProductShopView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
private boolean payInstant; private boolean payInstant;
...@@ -109,11 +109,11 @@ public class ProductShopView extends GenericCDIView { ...@@ -109,11 +109,11 @@ public class ProductShopView extends GenericCDIView {
return "redirBillList"; return "redirBillList";
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
......
...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.CardTemplateBeanLocal; ...@@ -17,7 +17,7 @@ import fi.insomnia.bortal.beans.CardTemplateBeanLocal;
import fi.insomnia.bortal.beans.EventBeanLocal; import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.model.CardTemplate; import fi.insomnia.bortal.model.CardTemplate;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.utilities.I18n; import fi.insomnia.bortal.utilities.I18n;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -37,7 +37,7 @@ public class CardView extends GenericCDIView { ...@@ -37,7 +37,7 @@ public class CardView extends GenericCDIView {
private EventBeanLocal eventBean; private EventBeanLocal eventBean;
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private IUser user;
private Integer cardid; private Integer cardid;
...@@ -114,11 +114,11 @@ public class CardView extends GenericCDIView { ...@@ -114,11 +114,11 @@ public class CardView extends GenericCDIView {
return null; return null;
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(IUser user) {
this.user = user; this.user = user;
} }
......
...@@ -7,18 +7,19 @@ import java.util.List; ...@@ -7,18 +7,19 @@ import java.util.List;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
public class ImportWrapper implements Serializable { public class ImportWrapper implements Serializable {
private static final long serialVersionUID = 6812020704989137912L; private static final long serialVersionUID = 6812020704989137912L;
private final User user; private final IUser user;
private final ArrayList<User> potential; private final ArrayList<User> potential;
private User selected; private User selected;
private Boolean skip = false; private Boolean skip = false;
private static final Logger logger = LoggerFactory.getLogger(ImportWrapper.class); private static final Logger logger = LoggerFactory.getLogger(ImportWrapper.class);
public ImportWrapper(User usr) { public ImportWrapper(IUser usr) {
user = usr; user = usr;
potential = new ArrayList<User>(); potential = new ArrayList<User>();
selected = new User(); selected = new User();
...@@ -29,7 +30,7 @@ public class ImportWrapper implements Serializable { ...@@ -29,7 +30,7 @@ public class ImportWrapper implements Serializable {
potential.addAll(results); potential.addAll(results);
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
...@@ -37,7 +38,7 @@ public class ImportWrapper implements Serializable { ...@@ -37,7 +38,7 @@ public class ImportWrapper implements Serializable {
return potential; return potential;
} }
public User getSelected() { public IUser getSelected() {
return selected; return selected;
} }
......
...@@ -10,6 +10,7 @@ import org.slf4j.Logger; ...@@ -10,6 +10,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.beans.UserBeanLocal; import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.model.IUser;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -115,7 +116,7 @@ public class PasswordResetView extends GenericCDIView { ...@@ -115,7 +116,7 @@ public class PasswordResetView extends GenericCDIView {
this.confirm = confirm; this.confirm = confirm;
} }
public User getUser() { public IUser getUser() {
return user; return user;
} }
......
...@@ -7,7 +7,7 @@ import javax.inject.Named; ...@@ -7,7 +7,7 @@ import javax.inject.Named;
import fi.insomnia.bortal.beans.UserBeanLocal; import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -22,7 +22,7 @@ public class PasswordView extends GenericCDIView { ...@@ -22,7 +22,7 @@ public class PasswordView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
@EJB @EJB
private transient UserBeanLocal userbean; private transient UserBeanLocal userbean;
...@@ -44,11 +44,11 @@ public class PasswordView extends GenericCDIView { ...@@ -44,11 +44,11 @@ public class PasswordView extends GenericCDIView {
return "permissionDenied"; return "permissionDenied";
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
......
...@@ -7,8 +7,8 @@ import javax.inject.Inject; ...@@ -7,8 +7,8 @@ import javax.inject.Inject;
import javax.inject.Named; import javax.inject.Named;
import fi.insomnia.bortal.beans.CardTemplateBeanLocal; import fi.insomnia.bortal.beans.CardTemplateBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.User;
import fi.insomnia.bortal.web.annotations.SelectedUser; import fi.insomnia.bortal.web.annotations.SelectedUser;
import fi.insomnia.bortal.web.cdiview.GenericCDIView; import fi.insomnia.bortal.web.cdiview.GenericCDIView;
...@@ -22,15 +22,15 @@ public class UserCardView extends GenericCDIView { ...@@ -22,15 +22,15 @@ public class UserCardView extends GenericCDIView {
@Inject @Inject
@SelectedUser @SelectedUser
private User user; private EventUser user;
private ListDataModel<PrintedCard> printedCards; private ListDataModel<PrintedCard> printedCards;
public User getUser() { public EventUser getUser() {
return user; return user;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
......
...@@ -18,10 +18,12 @@ import org.slf4j.LoggerFactory; ...@@ -18,10 +18,12 @@ import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.beans.AccountEventBeanLocal; import fi.insomnia.bortal.beans.AccountEventBeanLocal;
import fi.insomnia.bortal.beans.CardTemplateBeanLocal; import fi.insomnia.bortal.beans.CardTemplateBeanLocal;
import fi.insomnia.bortal.beans.EventBeanLocal;
import fi.insomnia.bortal.beans.RoleBeanLocal; import fi.insomnia.bortal.beans.RoleBeanLocal;
import fi.insomnia.bortal.beans.UserBeanLocal; import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.enums.apps.UserPermission; import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.model.AccountEvent; import fi.insomnia.bortal.model.AccountEvent;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.model.PrintedCard; import fi.insomnia.bortal.model.PrintedCard;
import fi.insomnia.bortal.model.Role; import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.model.User; import fi.insomnia.bortal.model.User;
...@@ -46,7 +48,7 @@ public class UserView extends GenericCDIView { ...@@ -46,7 +48,7 @@ public class UserView extends GenericCDIView {
private CroppedImage croppedImage; private CroppedImage croppedImage;
private User user; private EventUser user;
@Inject @Inject
private transient Conversation conversation; private transient Conversation conversation;
...@@ -72,19 +74,21 @@ public class UserView extends GenericCDIView { ...@@ -72,19 +74,21 @@ public class UserView extends GenericCDIView {
private List<Role> usersRoles; private List<Role> usersRoles;
@EJB @EJB
private RoleBeanLocal rolebean; private RoleBeanLocal rolebean;
@EJB
private EventBeanLocal eventbean;
@Produces @Produces
@LoggedIn @LoggedIn
public User getCurrentUser() { public EventUser getCurrentUser() {
return permbean.getCurrentUser(); return permbean.getCurrentUser();
} }
@Produces @Produces
@SelectedUser @SelectedUser
public User getSelectedUser() { public EventUser getSelectedUser() {
if (user == null) { if (user == null) {
if (userid != null && permbean.hasPermission(UserPermission.VIEW_ALL)) { if (userid != null && permbean.hasPermission(UserPermission.VIEW_ALL)) {
user = userbean.findById(userid); user = userbean.findEventUserById(userid);
} else { } else {
user = getCurrentUser(); user = getCurrentUser();
} }
...@@ -132,7 +136,7 @@ public class UserView extends GenericCDIView { ...@@ -132,7 +136,7 @@ public class UserView extends GenericCDIView {
try { try {
newImage = userbean.saveCroppedImage(user.getCurrentImage(), newImage = userbean.saveCroppedImage(user.getCurrentImage(),
croppedImage.getLeft(), croppedImage.getTop(), croppedImage.getWidth(), croppedImage.getHeight()); croppedImage.getLeft(), croppedImage.getTop(), croppedImage.getWidth(), croppedImage.getHeight());
user = newImage.getUser(); user = userbean.getEventUser(newImage.getUser());
} catch (IOException e) { } catch (IOException e) {
logger.info("Error converting image", e); logger.info("Error converting image", e);
super.addFaceMessage("user.errorConvertingImage"); super.addFaceMessage("user.errorConvertingImage");
...@@ -154,7 +158,7 @@ public class UserView extends GenericCDIView { ...@@ -154,7 +158,7 @@ public class UserView extends GenericCDIView {
public String sendImage() { public String sendImage() {
UserImage userimage = userbean.uploadImage(user, getImage().getContentType(), getImage().getContents(), getImage().getFileName(), ""); UserImage userimage = userbean.uploadImage(user, getImage().getContentType(), getImage().getContents(), getImage().getFileName(), "");
user = userimage.getUser(); user = userbean.getEventUser(userimage.getUser());
super.addFaceMessage("user.imageUploaded"); super.addFaceMessage("user.imageUploaded");
return null; return null;
...@@ -162,7 +166,7 @@ public class UserView extends GenericCDIView { ...@@ -162,7 +166,7 @@ public class UserView extends GenericCDIView {
public void initCreateView() { public void initCreateView() {
if (super.requirePermissions(UserPermission.CREATE_NEW)) { if (super.requirePermissions(UserPermission.CREATE_NEW)) {
user = new User(); user = new EventUser(new User(), eventbean.getCurrentEvent());
super.beginConversation(); super.beginConversation();
} }
} }
...@@ -220,11 +224,11 @@ public class UserView extends GenericCDIView { ...@@ -220,11 +224,11 @@ public class UserView extends GenericCDIView {
return userid; return userid;
} }
public void setUser(User user) { public void setUser(EventUser user) {
this.user = user; this.user = user;
} }
public User getUser() { public EventUser getUser() {
return user; return user;
} }
......
package fi.insomnia.bortal.web.converter;
import javax.ejb.EJB;
import javax.faces.bean.RequestScoped;
import javax.inject.Named;
import fi.insomnia.bortal.beans.UserBeanLocal;
import fi.insomnia.bortal.model.EventUser;
import fi.insomnia.bortal.utilities.jsf.GenericIntegerEntityConverter;
@Named
@RequestScoped
public class EventUserConverter extends GenericIntegerEntityConverter<EventUser> {
@EJB
private UserBeanLocal userbean;
@Override
protected EventUser find(Integer id) {
return userbean.findEventUserById(id);
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!