AccountEventView.java 1.96 KB
package fi.codecrew.moya.web.cdiview.user;

import javax.ejb.EJB;
import javax.enterprise.context.ConversationScoped;
import javax.inject.Inject;
import javax.inject.Named;

import fi.codecrew.moya.beans.AccountEventBeanLocal;
import fi.codecrew.moya.enums.apps.UserPermission;
import fi.codecrew.moya.model.AccountEvent;
import fi.codecrew.moya.web.cdiview.GenericCDIView;

@Named
@ConversationScoped
public class AccountEventView extends GenericCDIView {

	/**
	 * 
	 */
	private static final long serialVersionUID = -1873486276276870190L;

	@EJB
	private transient AccountEventBeanLocal accounteventbean;

	private AccountEvent accountevent;
	private Integer accountid;

	@Inject
	private UserView userview;

	private boolean canSave;

	public void initView() {

		accountevent = accounteventbean.find(getAccountid());
		if (requirePermissions(permbean.isCurrentUser(accountevent.getUser()) || permbean.hasPermission(UserPermission.VIEW_ACCOUNTEVENTS))) {
			userview.setUser(accountevent.getUser());
			beginConversation();
			setCanSave(permbean.hasPermission(UserPermission.MODIFY_ACCOUNTEVENTS));
		} else {
			accountevent = null;
		}

	}

	public String save()
	{
		super.addFaceMessage("accountevent.saved");
		accountevent = accounteventbean.merge(accountevent);
		userview.setUser(accountevent.getUser());
		return null;
	}

	public String delete()
	{
		accounteventbean.delete(accountevent);
		return "/useradmin/accountEvents";
	}

	public void setAccountid(Integer accountid) {
		this.accountid = accountid;
	}

	public Integer getAccountid() {
		return accountid;
	}

	public void setAccountevent(AccountEvent accountevent) {
		this.accountevent = accountevent;
	}

	public AccountEvent getAccountevent() {
		return accountevent;
	}

	public void setCanSave(boolean canSave) {
		this.canSave = canSave;
	}

	public boolean isCanSave() {
		return canSave;
	}

	public UserView getUserview() {
		return userview;
	}

	public void setUserview(UserView userview) {
		this.userview = userview;
	}

}