Commit 65e86b9a by Antti Tonkyra

Merge branch 'master' of dev.insomnia.fi:/data/bortal

2 parents 2d0e5f0f 1458594e
package fi.insomnia.bortal.model;
import static javax.persistence.CascadeType.DETACH;
import static javax.persistence.CascadeType.MERGE;
import static javax.persistence.CascadeType.PERSIST;
import static javax.persistence.CascadeType.REFRESH;
import java.util.ArrayList;
import java.util.Calendar;
......@@ -30,7 +33,7 @@ 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)
@ManyToOne(cascade = { PERSIST, MERGE, REFRESH, DETACH })
@JoinColumn(nullable = false, name = USER_ID_COLUMN)
private User user;
@ManyToOne
......
......@@ -91,6 +91,9 @@ public class User extends GenericEntity implements IUser {
@Column(name = "gender", nullable = false)
private Gender gender = Gender.UNDEFINED;
/**
* hash generated for password reset..
*/
@Column(name = "confirm_hash")
private String confirmHash;
......@@ -109,7 +112,9 @@ public class User extends GenericEntity implements IUser {
@Transient
private static final Logger logger = LoggerFactory.getLogger(User.class);
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getCreated()
*/
@Override
......@@ -117,7 +122,9 @@ public class User extends GenericEntity implements IUser {
return created;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setCreated(java.util.Calendar)
*/
@Override
......@@ -125,7 +132,9 @@ public class User extends GenericEntity implements IUser {
this.created = created;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getActive()
*/
@Override
......@@ -133,7 +142,9 @@ public class User extends GenericEntity implements IUser {
return active;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setActive(boolean)
*/
@Override
......@@ -141,7 +152,9 @@ public class User extends GenericEntity implements IUser {
this.active = active;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getPassword()
*/
@Override
......@@ -150,7 +163,9 @@ public class User extends GenericEntity implements IUser {
return password;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setPassword(java.lang.String)
*/
@Override
......@@ -159,7 +174,9 @@ public class User extends GenericEntity implements IUser {
this.password = password;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getWholeName()
*/
@Override
......@@ -171,7 +188,9 @@ public class User extends GenericEntity implements IUser {
return ret;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getLastname()
*/
@Override
......@@ -179,7 +198,9 @@ public class User extends GenericEntity implements IUser {
return lastname;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setLastname(java.lang.String)
*/
@Override
......@@ -187,7 +208,9 @@ public class User extends GenericEntity implements IUser {
this.lastname = lastname;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getFirstnames()
*/
@Override
......@@ -195,7 +218,9 @@ public class User extends GenericEntity implements IUser {
return firstnames;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setFirstnames(java.lang.String)
*/
@Override
......@@ -203,7 +228,9 @@ public class User extends GenericEntity implements IUser {
this.firstnames = firstnames;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getBirthday()
*/
@Override
......@@ -211,7 +238,9 @@ public class User extends GenericEntity implements IUser {
return birthday;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setBirthday(java.util.Calendar)
*/
@Override
......@@ -219,7 +248,9 @@ public class User extends GenericEntity implements IUser {
this.birthday = birthday;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getNick()
*/
@Override
......@@ -227,7 +258,9 @@ public class User extends GenericEntity implements IUser {
return nick;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setNick(java.lang.String)
*/
@Override
......@@ -235,7 +268,9 @@ public class User extends GenericEntity implements IUser {
this.nick = nick;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getEmail()
*/
@Override
......@@ -243,7 +278,9 @@ public class User extends GenericEntity implements IUser {
return email;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setEmail(java.lang.String)
*/
@Override
......@@ -251,7 +288,9 @@ public class User extends GenericEntity implements IUser {
this.email = email;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getAddress()
*/
@Override
......@@ -259,7 +298,9 @@ public class User extends GenericEntity implements IUser {
return address;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setAddress(java.lang.String)
*/
@Override
......@@ -267,7 +308,9 @@ public class User extends GenericEntity implements IUser {
this.address = address;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getZip()
*/
@Override
......@@ -275,7 +318,9 @@ public class User extends GenericEntity implements IUser {
return zip;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setZip(java.lang.String)
*/
@Override
......@@ -283,7 +328,9 @@ public class User extends GenericEntity implements IUser {
this.zip = zip;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getTown()
*/
@Override
......@@ -291,7 +338,9 @@ public class User extends GenericEntity implements IUser {
return town;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setTown(java.lang.String)
*/
@Override
......@@ -299,7 +348,9 @@ public class User extends GenericEntity implements IUser {
this.town = town;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getPhone()
*/
@Override
......@@ -307,7 +358,9 @@ public class User extends GenericEntity implements IUser {
return phone;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setPhone(java.lang.String)
*/
@Override
......@@ -315,7 +368,9 @@ public class User extends GenericEntity implements IUser {
this.phone = phone;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getLogin()
*/
@Override
......@@ -323,7 +378,9 @@ public class User extends GenericEntity implements IUser {
return login;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setLogin(java.lang.String)
*/
@Override
......@@ -339,7 +396,9 @@ public class User extends GenericEntity implements IUser {
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getUserImageList()
*/
@Override
......@@ -347,7 +406,9 @@ public class User extends GenericEntity implements IUser {
return userImageList;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setUserImageList(java.util.List)
*/
@Override
......@@ -355,7 +416,9 @@ public class User extends GenericEntity implements IUser {
this.userImageList = userImageList;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getConfirmHash()
*/
@Override
......@@ -363,7 +426,9 @@ public class User extends GenericEntity implements IUser {
return confirmHash;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setConfirmHash(java.lang.String)
*/
@Override
......@@ -371,7 +436,9 @@ public class User extends GenericEntity implements IUser {
this.confirmHash = confirmHash;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getConfirmTime()
*/
@Override
......@@ -379,7 +446,9 @@ public class User extends GenericEntity implements IUser {
return confirmTime;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setConfirmTime(java.util.Calendar)
*/
@Override
......@@ -387,7 +456,9 @@ public class User extends GenericEntity implements IUser {
this.confirmTime = confirmTime;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#resetPassword(java.lang.String)
*/
@Override
......@@ -396,7 +467,9 @@ public class User extends GenericEntity implements IUser {
this.password = newEncryptedPassword; // Bypass setter
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#checkPassword(java.lang.String)
*/
@Override
......@@ -405,7 +478,9 @@ public class User extends GenericEntity implements IUser {
return matches;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setSuperadmin(boolean)
*/
@Override
......@@ -413,7 +488,9 @@ public class User extends GenericEntity implements IUser {
this.superadmin = superadmin;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#isSuperadmin()
*/
@Override
......@@ -421,7 +498,9 @@ public class User extends GenericEntity implements IUser {
return superadmin;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#setPostalTown(java.lang.String)
*/
@Override
......@@ -429,7 +508,9 @@ public class User extends GenericEntity implements IUser {
this.postalTown = postalTown;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getPostalTown()
*/
@Override
......@@ -437,15 +518,20 @@ public class User extends GenericEntity implements IUser {
return postalTown;
}
/* (non-Javadoc)
* @see fi.insomnia.bortal.model.IUser#setGender(fi.insomnia.bortal.enums.Gender)
/*
* (non-Javadoc)
*
* @see
* fi.insomnia.bortal.model.IUser#setGender(fi.insomnia.bortal.enums.Gender)
*/
@Override
public void setGender(Gender gender) {
this.gender = gender;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getGender()
*/
@Override
......@@ -453,15 +539,21 @@ public class User extends GenericEntity implements IUser {
return gender;
}
/* (non-Javadoc)
* @see fi.insomnia.bortal.model.IUser#setCurrentImage(fi.insomnia.bortal.model.UserImage)
/*
* (non-Javadoc)
*
* @see
* fi.insomnia.bortal.model.IUser#setCurrentImage(fi.insomnia.bortal.model
* .UserImage)
*/
@Override
public void setCurrentImage(UserImage currentImage) {
this.currentImage = currentImage;
}
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#getCurrentImage()
*/
@Override
......@@ -472,7 +564,9 @@ public class User extends GenericEntity implements IUser {
@Transient
private Boolean isAnon;
/* (non-Javadoc)
/*
* (non-Javadoc)
*
* @see fi.insomnia.bortal.model.IUser#isAnonymous()
*/
@Override
......
......@@ -8,7 +8,6 @@
>
<h:body>
<ui:composition template="/layout/#{sessionHandler.layout}/template.xhtml">
<ui:param name="thispage" value="page.place.edit" />
<f:metadata>
<f:viewParam name="placeid" value="#{placeView.placeId}" />
<f:event type="preRenderView" listener="#{placeView.initView}" />
......@@ -151,7 +150,7 @@
<h:link rendered="#{!empty place.placeReserver.user}" outcome="/user/edit">
<h:outputText value="#{place.placeReserver.user.wholeName}" />
(<h:outputText value="#{place.placeReserver.user.nick}" />)
<f:param name="userid" value="#{place.placeReserver.user.id}" />
<f:param name="userid" value="#{place.placeReserver.user.user.id}" />
</h:link>
</h:column>
<h:column>
......
......@@ -41,7 +41,7 @@
</h:column>
<h:column>
<h:link rendered="#{!empty event.printedCard}" outcome="/shop/shopToUser" value="#{i18n['readerevent.shopToUser']}">
<f:param name="userid" value="#{event.printedCard.user.id}" />
<f:param name="userid" value="#{event.printedCard.user.user.id}" />
</h:link>
<h:link rendered="#{empty event.printedCard}" outcome="/shop/assocToUser" value="#{i18n['readerevent.associateToUser']}">
......
......@@ -20,23 +20,23 @@
<div id="#{cc.attrs.tabId}">
<ul id="usertabnav">
<li class="edit"><h:link outcome="/useradmin/edit" value="#{i18n['user.edit']}">
<f:param name="userid" value="#{userView.user.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
</h:link></li>
<li class="chpass"><h:link outcome="/useradmin/changePassword" value="#{i18n['submenu.user.changePassword']}">
<f:param name="userid" value="#{userView.user.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
</h:link></li>
<li class="accountevents"><h:link outcome="/useradmin/accountEvents" value="#{i18n['submenu.user.accountEvents']}">
<f:param name="userid" value="#{userView.user.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
</h:link></li>
<li class="groups"><h:link outcome="/place/adminGroups" value="#{i18n['submenu.place.myGroups']}">
<f:param name="userid" value="#{userView.user.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
</h:link></li>
<li class="picture"><h:link outcome="/useradmin/sendPicture" value="#{i18n['submenu.user.sendPicture']}">
<f:param name="userid" value="#{userView.user.id}" />
<f:param name="userid" value="#{userView.user.user.id}" />
</h:link></li>
</ul>
......
......@@ -15,9 +15,6 @@
</ui:define>
<ui:define name="content">
<users:edit commitaction="#{userView.saveUser()}" commitvalue="#{i18n['user.save']}" />
</ui:define>
</ui:composition>
</h:body>
......
......@@ -93,6 +93,15 @@
<f:convertDateTime type="both" pattern="dd.MM.yyyy HH:mm" />
</h:outputText>
</h:column>
<h:column>
<f:facet name="header">
<h:outputText value="Submit entry" />
</f:facet>
<h:link outcome="addentry">
<f:param name="compoId" value="#{compo.id}" />
Submit entry
</h:link>
</h:column>
</h:dataTable>
</div>
......
......@@ -526,6 +526,8 @@ userview.userExists = Username already exists! please select another.
viewexpired.body = Please login again.
viewexpired.title = Login expired. Please login again.
voting.allcompos.description = List of all compos and NIIDEN information.
voting.allcompos.header = All compos
voting.create.compoEnd = End time
voting.create.compoStart = Start time
voting.create.createButton = Create
......
......@@ -516,6 +516,8 @@ userview.userExists = K\u00E4ytt\u00E4j\u00E4tunnus on jo olemassa. Ole
viewexpired.body = Ole hyv\u00E4 ja kirjaudu sis\u00E4\u00E4n uudelleen.
viewexpired.title = N\u00E4kym\u00E4 on vanhentunut
voting.allcompos.description = Compojen informaatiot.
voting.allcompos.header = Kaikki compot
voting.create.compoEnd = Lopetusaika
voting.create.compoStart = Aloitusaika
voting.create.createButton = Luo
......
......@@ -196,6 +196,7 @@ public class UserView extends GenericCDIView {
public String saveUser() {
if (permbean.getCurrentUser().equals(user) || permbean.hasPermission(UserPermission.MODIFY)) {
this.addFaceMessage("user.successfullySaved");
user = userbean.mergeChanges(user);
......
......@@ -7,6 +7,8 @@ import javax.enterprise.context.RequestScoped;
import javax.faces.bean.ManagedBean;
import javax.inject.Named;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import fi.insomnia.bortal.beans.VotingBeanLocal;
import fi.insomnia.bortal.model.Compo;
......@@ -29,6 +31,8 @@ public class VotingCompoListView extends GenericCDIView {
boolean curEntries;
boolean maxParts;
private static final Logger logger = LoggerFactory.getLogger(VotingCompoListView.class);
public boolean isCurEntries() {
return curEntries;
}
......@@ -55,10 +59,12 @@ public class VotingCompoListView extends GenericCDIView {
if(requirePermissions(CompoPermission.VIEW_COMPOS) && role == null) {
curEntries = true;
maxParts = true;
logger.info("Permission to view full compo listing.");
}
else {
curEntries = false;
maxParts = false;
logger.info("Not enough rights to view full compo listing.");
}
}
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!