UserOverviewItem.java 3.6 KB
package fi.codecrew.moya.web.helpers;

import java.io.ByteArrayInputStream;

import javax.faces.event.ActionEvent;

import org.primefaces.model.CroppedImage;
import org.primefaces.model.DefaultStreamedContent;
import org.primefaces.model.StreamedContent;

import fi.codecrew.moya.enums.CardState;
import fi.codecrew.moya.model.EventUser;
import fi.codecrew.moya.model.PrintedCard;

public class UserOverviewItem {
	
	private EventUser eventUser;
	private PrintedCard printedCard;

	private boolean sendRejectionMail;
	
	private CroppedImage croppedImage;

	private String rejectionMsg;
	private String rejectionMsgSubject;
	private String rejectionMsgBody;
	private String rejectionMsgToAddr;
	private String rejectionMsgToName;
	
	
	public UserOverviewItem(EventUser eu, PrintedCard pc, String mailSubject, String mailBody) {
		eventUser = eu;
		printedCard = pc;
		
		sendRejectionMail = true;
		
		if(mailSubject != null)
			this.rejectionMsgSubject = mailSubject;
		else
			this.rejectionMsgSubject = "";
		if(mailBody != null)
			this.rejectionMsgBody = mailBody;
		else
			this.rejectionMsgBody = "";
		
		if(this.rejectionMsgSubject.contains("{0}") && eventUser != null && eventUser.getEvent() != null)
			this.rejectionMsgSubject = this.rejectionMsgSubject.replace("{0}", eventUser.getEvent().getName());
		
		if(this.rejectionMsgBody.contains("{0}") && eventUser != null && eventUser.getEvent() != null)
			this.rejectionMsgBody = this.rejectionMsgBody.replace("{0}", eventUser.getEvent().getName());
		
		this.rejectionMsgToAddr = eventUser.getEmail();
		this.rejectionMsgToName = eventUser.getWholeName();
	}
	
	public StreamedContent getStreamedContent() {
		if(eventUser.getCurrentImage() != null && eventUser.getCurrentImage().getImageData() != null) {
			String mime = eventUser.getCurrentImage().getMimeType();
			if(mime == null || mime.equals(""))
				mime = "image/jpg";
			return new DefaultStreamedContent(new ByteArrayInputStream(eventUser.getCurrentImage().getImageData()), mime);
		}
		return null;
	}
	
	public CroppedImage getCroppedImage() {
		return croppedImage;
	}

	public void setCroppedImage(CroppedImage croppedImage) {
		this.croppedImage = croppedImage;
	}
	
	public void acceptCard(ActionEvent ae) {
		printedCard.setCardState(CardState.VALIDATED);
    }

	public EventUser getEventUser() {
		return eventUser;
	}

	public void setEventUser(EventUser eventUser) {
		this.eventUser = eventUser;
	}

	public PrintedCard getPrintedCard() {
		return printedCard;
	}

	public void setPrintedCard(PrintedCard printedCard) {
		this.printedCard = printedCard;
	}
	
	public boolean isSendRejectionMail() {
		return sendRejectionMail;
	}

	public void setSendRejectionMail(boolean rejectionSendMail) {
		this.sendRejectionMail = rejectionSendMail;
	}

	public String getRejectionMsg() {
		return rejectionMsg;
	}

	public void setRejectionMsg(String rejectionMsg) {
		this.rejectionMsg = rejectionMsg;
	}

	public String getRejectionMsgSubject() {
		return rejectionMsgSubject;
	}

	public void setRejectionMsgSubject(String rejectionMsgSubject) {
		this.rejectionMsgSubject = rejectionMsgSubject;
	}

	public String getRejectionMsgBody() {
		return rejectionMsgBody;
	}

	public void setRejectionMsgBody(String rejectionMsgBody) {
		this.rejectionMsgBody = rejectionMsgBody;
	}

	public String getRejectionMsgToAddr() {
		return rejectionMsgToAddr;
	}

	public void setRejectionMsgToAddr(String rejectionMsgToAddr) {
		this.rejectionMsgToAddr = rejectionMsgToAddr;
	}

	public String getRejectionMsgToName() {
		return rejectionMsgToName;
	}

	public void setRejectionMsgToName(String rejectionMsgToName) {
		this.rejectionMsgToName = rejectionMsgToName;
	}
}