Commit 6599c10a by Antti Tönkyrä

Merge branch 'master' of codecrew.fi:bortal

2 parents 623579ea 788b6bdd
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<f:event type="preRenderView" listener="#{userView.initCreateView}" /> <f:event type="preRenderView" listener="#{userView.initCreateView}" />
</f:metadata> </f:metadata>
<ui:define name="content"> <ui:define name="content">
<users:create creating="true" commitaction="#{userView.createUser()}" commitvalue="#{i18n['user.create']}" /> <users:create creating="true" commitaction="#{userView.createUser()}" commitvalue="#{i18n['user.create']}" />
</ui:define> </ui:define>
</ui:composition> </ui:composition>
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
</f:metadata> </f:metadata>
<ui:param name="thispage" value="page.user.create" /> <ui:param name="thispage" value="page.user.create" />
<ui:define name="content"> <ui:define name="content">
<users:create creating="true" commitaction="#{userView.createUser()}" commitvalue="#{i18n['user.create']}" /> <users:create creating="true" commitaction="#{userView.createAdminUser()}" commitvalue="#{i18n['user.create']}" />
</ui:define> </ui:define>
</ui:composition> </ui:composition>
......
...@@ -49,7 +49,7 @@ ...@@ -49,7 +49,7 @@
<div id="usercart" style="display: #{((userCartView.isEmpty())?'none':'block')};"> <div id="usercart" style="display: #{((userCartView.isEmpty())?'none':'block')};">
<h:outputText value="#{i18n['usercart.cartsize']}" /> <h:outputText value="#{i18n['usercart.cartsize']}" />
<h:outputText value=" #{userCartView.userCartSize}" /> <h:outputText value=" #{userCartView.userCartSize}" />
<h:commandButton action="#{userCartView.clearCart}" value="#{i18n['usercart.clear']}" /> <h:commandButton action="#{userCartView.clearCart()}" value="#{i18n['usercart.clear']}" />
<br /> <br />
<h:commandButton actionListener="#{userSearchView.addToCart}" value="#{i18n['usercart.addSearcherUsers']}" /> <h:commandButton actionListener="#{userSearchView.addToCart}" value="#{i18n['usercart.addSearcherUsers']}" />
<h:commandButton action="#{userCartView.traverse}" value="#{i18n['usercart.traverse']}" /> <h:commandButton action="#{userCartView.traverse}" value="#{i18n['usercart.traverse']}" />
......
...@@ -69,7 +69,8 @@ public class UserCartView extends GenericCDIView { ...@@ -69,7 +69,8 @@ public class UserCartView extends GenericCDIView {
updateCurrent(); updateCurrent();
return "/useradmin/userCartShow"; return "/useradmin/userCartShow";
} }
else return "/useradmin/list"; else
return "/useradmin/list";
} }
public String saveUser() { public String saveUser() {
...@@ -102,12 +103,12 @@ public class UserCartView extends GenericCDIView { ...@@ -102,12 +103,12 @@ public class UserCartView extends GenericCDIView {
} }
public void clearCart() { public String clearCart() {
if (usercart != null) if (usercart != null)
usercart.clear(); usercart.clear();
//return null; return null;
} }
public boolean isEmpty() { public boolean isEmpty() {
return usercart == null || usercart.isEmpty(); return usercart == null || usercart.isEmpty();
} }
......
...@@ -14,7 +14,9 @@ import javax.inject.Named; ...@@ -14,7 +14,9 @@ import javax.inject.Named;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
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.utilities.I18n; import fi.insomnia.bortal.utilities.I18n;
@Named @Named
...@@ -29,12 +31,15 @@ public class UserValidator implements Serializable { ...@@ -29,12 +31,15 @@ public class UserValidator implements Serializable {
private static final Integer PASSWORD_MIN_LENGTH = 8; private static final Integer PASSWORD_MIN_LENGTH = 8;
@EJB @EJB
private transient UserBeanLocal userbean; private transient UserBeanLocal userbean;
@EJB
private transient PermissionBeanLocal permbean;
private static final Logger logger = LoggerFactory.getLogger(UserValidator.class); private static final Logger logger = LoggerFactory.getLogger(UserValidator.class);
public void validateEmail(FacesContext context, UIComponent ui, Object value) { public void validateEmail(FacesContext context, UIComponent ui, Object value) {
String email = (String) value; String email = (String) value;
if (email.indexOf('@') == -1) { if (!permbean.hasPermission(UserPermission.MODIFY) && (email == null || email.indexOf('@') == -1)) {
message(context, ui, "userview.invalidEmail"); message(context, ui, "userview.invalidEmail");
} }
} }
...@@ -53,21 +58,25 @@ public class UserValidator implements Serializable { ...@@ -53,21 +58,25 @@ public class UserValidator implements Serializable {
public void password(FacesContext context, UIComponent ui, Object object) { public void password(FacesContext context, UIComponent ui, Object object) {
logger.info("Executing pwd, firstpwd {}", firstpwd); logger.info("Executing pwd, firstpwd {}", firstpwd);
if (object == null) { if (!permbean.hasPermission(UserPermission.MODIFY))
message(context, ui, "user.passwordlengthMessage"); {
return; if (object == null) {
} message(context, ui, "user.passwordlengthMessage");
if (firstpwd == null) { return;
firstpwd = object.toString(); }
if (PASSWORD_MIN_LENGTH.compareTo(firstpwd.length()) > 0) { if (firstpwd == null) {
message(context, ui, "userview.passwordTooShort", PASSWORD_MIN_LENGTH); firstpwd = object.toString();
if (PASSWORD_MIN_LENGTH.compareTo(firstpwd.length()) > 0) {
message(context, ui, "userview.passwordTooShort", PASSWORD_MIN_LENGTH);
}
logger.info("Setting firstpwd to {} as {}", firstpwd, object.getClass());
return;
}
logger.info("Checking length");
if (!firstpwd.equals(object)) {
message(context, ui, "userview.passwordsDontMatch");
} }
logger.info("Setting firstpwd to {} as {}", firstpwd, object.getClass());
return;
}
logger.info("Checking length");
if (!firstpwd.equals(object)) {
message(context, ui, "userview.passwordsDontMatch");
} }
logger.info("Done pwd"); logger.info("Done pwd");
} }
......
...@@ -85,10 +85,10 @@ public class UserView extends GenericCDIView { ...@@ -85,10 +85,10 @@ public class UserView extends GenericCDIView {
private transient EventBeanLocal eventbean; private transient EventBeanLocal eventbean;
@EJB @EJB
private transient CardPrintBeanLocal cardPrintBean; private transient CardPrintBeanLocal cardPrintBean;
private File file; private File file;
private StreamedContent streamedFile; private StreamedContent streamedFile;
private MassPrintResult mpr = null; private MassPrintResult mpr = null;
private boolean waitForAcceptance = false; private boolean waitForAcceptance = false;
...@@ -142,13 +142,13 @@ public class UserView extends GenericCDIView { ...@@ -142,13 +142,13 @@ public class UserView extends GenericCDIView {
// user = userbean.getEventUser(img.getUser()); // user = userbean.getEventUser(img.getUser());
// croppedImage = null; // croppedImage = null;
if (croppedImage == null)
if(croppedImage == null) return null; return null;
logger.info("Cropped image {}x{}", croppedImage.getLeft(), croppedImage.getTop()); logger.info("Cropped image {}x{}", croppedImage.getLeft(), croppedImage.getTop());
logger.info("Cropped data bytesize {}, type {}", croppedImage.getBytes().length, croppedImage.getOriginalFilename()); logger.info("Cropped data bytesize {}, type {}", croppedImage.getBytes().length, croppedImage.getOriginalFilename());
try { try {
UserImage newImage = UserImage newImage =
userbean.saveCroppedImage(user.getUser().getCurrentImage(), userbean.saveCroppedImage(user.getUser().getCurrentImage(),
croppedImage.getLeft(), croppedImage.getTop(), croppedImage.getLeft(), croppedImage.getTop(),
...@@ -160,29 +160,29 @@ public class UserView extends GenericCDIView { ...@@ -160,29 +160,29 @@ public class UserView extends GenericCDIView {
} }
return null; return null;
} }
public void prepareCardDownload() { public void prepareCardDownload() {
file = null; file = null;
try { try {
mpr = cardPrintBean.getUserCardAsPrintablePdf(this.user.getId()); mpr = cardPrintBean.getUserCardAsPrintablePdf(this.user.getId());
file = File.createTempFile("cardprintout",null); file = File.createTempFile("cardprintout", null);
FileOutputStream fostream = new FileOutputStream(file); FileOutputStream fostream = new FileOutputStream(file);
fostream.write(mpr.getPdf()); fostream.write(mpr.getPdf());
fostream.close(); fostream.close();
setStreamedFile(new DefaultStreamedContent(new FileInputStream(this.file))); setStreamedFile(new DefaultStreamedContent(new FileInputStream(this.file)));
} catch(Exception e) { } catch (Exception e) {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(e.getMessage())); FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(e.getMessage()));
} }
} }
public String acceptPrintedCard() { public String acceptPrintedCard() {
if(mpr != null && mpr.getAffectedUsers().size() > 0) { if (mpr != null && mpr.getAffectedUsers().size() > 0) {
cardPrintBean.acceptMassPrintResult(mpr); cardPrintBean.acceptMassPrintResult(mpr);
return "accepted"; return "accepted";
} else { } else {
return "failure"; return "failure";
} }
} }
...@@ -290,6 +290,12 @@ public class UserView extends GenericCDIView { ...@@ -290,6 +290,12 @@ public class UserView extends GenericCDIView {
return "/user/created"; return "/user/created";
} }
public String createAdminUser() {
userbean.createNewUser(user, getPassword());
canSave = permbean.hasPermission(UserPermission.MODIFY);
return "/useradmin/edit";
}
public void setUserid(Integer userid) { public void setUserid(Integer userid) {
this.userid = userid; this.userid = userid;
} }
...@@ -357,7 +363,7 @@ public class UserView extends GenericCDIView { ...@@ -357,7 +363,7 @@ public class UserView extends GenericCDIView {
public void raiseWaitForAcceptance() { public void raiseWaitForAcceptance() {
waitForAcceptance = true; waitForAcceptance = true;
} }
public boolean isWaitForAcceptance() { public boolean isWaitForAcceptance() {
return waitForAcceptance; return waitForAcceptance;
} }
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!