Commit a5075373 by Tuomas Riihimäki

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

2 parents 87dccb64 7065519a
package fi.insomnia.bortal.beans;
import java.util.Date;
import java.util.List;
import javax.annotation.security.RolesAllowed;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import fi.insomnia.bortal.enums.ActionLogMessageState;
import fi.insomnia.bortal.enums.apps.UserPermission;
import fi.insomnia.bortal.facade.ActionLogFacade;
import fi.insomnia.bortal.model.ActionLogMessage;
import fi.insomnia.bortal.model.Role;
/**
* Session Bean implementation class ActionLogBean
......@@ -22,16 +27,37 @@ public class ActionLogBean implements ActionLogBeanLocal {
@EJB
private ActionLogFacade actionLogFacade;
@EJB
private RoleBeanLocal roleBean;
@EJB
private PermissionBeanLocal permissionBean;
public ActionLogBean() {
// TODO Auto-generated constructor stub
}
public void createActionLogEvent(String message, Role crew, boolean isTask) {
ActionLogMessage alm = new ActionLogMessage();
alm.setCrew(crew);
if(isTask) {
alm.setState(ActionLogMessageState.PENDING);
} else {
alm.setState(null);
}
alm.setTime(new Date());
alm.setMessage(message);
alm.setUser(permissionBean.getCurrentUser());
public void createActionLogEvent(String name, String crew, String message) {
//System.out.println("would creates, crew="+crew.getName()+" u="+alm.getUser().getNick());
actionLogFacade.saveToActionLog(alm);
}
public List<ActionLogMessage> getAllActionLogEvents() {
return actionLogFacade.getAllSortedByTimestamp();
}
public List<Role> getAssignableRoles() {
return roleBean.listRoles();
}
}
......@@ -41,4 +41,8 @@ public class ActionLogFacade extends GenericFacade<Integer,ActionLogMessage> {
// TODO Auto-generated method stub
return null;
}
public void saveToActionLog(ActionLogMessage alm) {
em.persist(alm);
}
}
......@@ -4,8 +4,11 @@ import java.util.List;
import javax.ejb.Local;
import fi.insomnia.bortal.model.ActionLogMessage;
import fi.insomnia.bortal.model.Role;
@Local
public interface ActionLogBeanLocal {
public List<ActionLogMessage> getAllActionLogEvents();
public List<Role> getAssignableRoles();
public void createActionLogEvent(String message, Role crew, boolean isTask);
}
......@@ -26,8 +26,8 @@ public class ActionLogMessage extends GenericEntity {
@JoinColumn(name="user_id")
private User user;
@Column(name="crew", nullable=false)
private String crew;
@JoinColumn(name="crew", nullable=false)
private Role crew;
@Column(name="message", nullable=false)
private String message;
......@@ -52,11 +52,11 @@ public class ActionLogMessage extends GenericEntity {
this.user = user;
}
public String getCrew() {
public Role getCrew() {
return crew;
}
public void setCrew(String crew) {
public void setCrew(Role crew) {
this.crew = crew;
}
......
......@@ -12,17 +12,22 @@
</f:metadata>
<ui:define name="content">
<h:form>
<h:messages />
<h1>#{i18n['actionlog.create.header']}</h1>
<h:outputText value="#{i18n['actionlog.create.role']}" />
<h:selectOneMenu value="" >
<f:selectItems var="crew" itemLabel="#{crew.name}" value="#{actionLogCreateView.crews}" />
<h:selectOneMenu value="#{actionLogCreateView.role}" converter="#{roleConverter}" >
<f:selectItems var="role" itemLabel="#{role.name}" value="#{actionLogCreateView.roles}" />
</h:selectOneMenu>
<h:outputText value="#{i18n['actionlog.create.message']}" />
<h:inputText />
<h:inputText value="#{actionLogCreateView.message}" />
<h:outputText value="#{i18n['actionlog.create.taskradio']}" />
<h:selectBooleanCheckbox />
<h:selectBooleanCheckbox value="#{actionLogCreateView.task}"/>
<br />
<h:button value="#{i18n['actionlog.create.submitbutton']}" />
<h:commandButton action="#{actionLogCreateView.send}" value="#{i18n['actionlog.create.submitbutton']}" />
</h:form>
</ui:define>
</ui:composition>
......
user.nickSizeMessage=Nimimerkin pit olla vhintn {min} merkki pitk.
user.emailregex=Kentss pit olla shkpostiosoite.
javax.validation.constraints.NotNull.message=Kentt ei saa olla tyhj
actionlog.message.tooshort=Kahva ei kelpaa! (Viestisi on liian lyhyt :)
package fi.insomnia.bortal.web.cdiview.actionlog;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.enterprise.context.RequestScoped;
import javax.faces.model.SelectItem;
import javax.inject.Named;
import javax.validation.constraints.Size;
import fi.insomnia.bortal.beans.ActionLogBeanLocal;
import fi.insomnia.bortal.beans.RoleBeanLocal;
import fi.insomnia.bortal.model.Role;
import fi.insomnia.bortal.web.cdiview.GenericCDIView;
......@@ -13,17 +18,45 @@ import fi.insomnia.bortal.web.cdiview.GenericCDIView;
@Named
@RequestScoped
public class ActionLogCreateView extends GenericCDIView {
/**
*
*/
@EJB
private ActionLogBeanLocal actionLogBean;
@Size(min=4,message="{actionlog.message.tooshort}")
private String message;
private Role role;
private boolean task;
private static final long serialVersionUID = 1L;
private ArrayList<Crew> crews = new ArrayList<Crew>();
public List<Role> getRoles() {
return actionLogBean.getAssignableRoles();
}
public Role getRole() {
return this.role;
}
public void setRole(Role role) {
this.role = role;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public ArrayList<Crew> getCrews(){
crews.add(new Crew("1", "joo"));
crews.add(new Crew("2", "jee"));
public boolean isTask() {
return task;
}
public void setTask(boolean task) {
this.task = task;
}
return crews;
public void send() {
actionLogBean.createActionLogEvent(message, role, task);
}
}
......@@ -16,7 +16,7 @@ public class ActionLogMessageView extends GenericCDIView {
private static final long serialVersionUID = 1L;
@EJB
ActionLogBeanLocal actionLogBean;
private ActionLogBeanLocal actionLogBean;
public List<ActionLogMessage> getMessages() {
return actionLogBean.getAllActionLogEvents();
......
package fi.insomnia.bortal.web.cdiview.actionlog;
public class ActionMessage {
private String timestamp;
private String user;
private String crew;
private String message;
public String getTimestamp() {
return timestamp;
}
public void setTimestamp(String timestamp) {
this.timestamp = timestamp;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getCrew() {
return crew;
}
public void setCrew(String crew) {
this.crew = crew;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}
\ No newline at end of file
package fi.insomnia.bortal.web.cdiview.actionlog;
public class Crew {
private String id;
private String name;
public Crew(String id, String nimi) {
this.id = id;
this.name = nimi;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!