package com.github.windbender.service;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Session;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.github.windbender.WLCDMServerConfiguration;
import com.github.windbender.domain.Project;
import com.github.windbender.domain.User;
public class InviteEmailMessageCreator implements MessageCreator {
private WLCDMServerConfiguration configuration;
private Project currentProject;
private String inviteEmail;
private String inviteCode;
private User user;
public InviteEmailMessageCreator(User user, String inviteEmail, String inviteCode,
Project currentProject, WLCDMServerConfiguration configuration) {
this.user = user;
this.inviteEmail = inviteEmail;
this.inviteCode = inviteCode;
this.currentProject = currentProject;
this.configuration = configuration;
}
@Override
public MimeMessage createMessage(Session session) throws AddressException,
MessagingException {
MimeMessage message = new MimeMessage(session);
// Set From: header field of the header.
message.setFrom(new InternetAddress(configuration.getEmailFrom()));
// Set To: header field of the header.
message.addRecipient(Message.RecipientType.TO, new InternetAddress(inviteEmail));
// Set Subject: header field
message.setSubject("You've been invited to help");
// Send the actual HTML message, as big as you like
message.setContent(
"<h4>You have been invited to help work on the "+currentProject.getName()+" project by "+user.getUsername()+" at "+user.getEmail()
+" If you would like to help please click on the following link <a href=\""+configuration.getRootURL()+"/#/accept/?inviteCode="
+ inviteCode + "\" >CLICK HERE</a>"
+"<p> The "+currentProject.getName()+" is described as "+currentProject.getDescription(),
"text/html");
return message;
}
}