public bool NotifyWinner(Winner winner)
{
var body = "<h1>Congratulations!</h1><br />";
body += string.Format("You've won <strong>{0}</strong> {2} in the raffle for event: <strong>{1}</strong> <br />",
winner.NumberOfSpotsWon, winner.Event.Name, winner.NumberOfSpotsWon == 1 ? "ticket" : "tickets");
body += string.Format("Please look at the event details or contact <a href=\"{0}\">{0}</a> to get {1}.",
winner.Event.Creator, winner.NumberOfSpotsWon == 1 ? "it" : "them");
var mailMessage = new MailMessage {
From = new MailAddress(emailSettings.MailFromAddress),
Subject = string.Format("[CapRaffle] {0} winner!", winner.Event.Name),
Body = body,
IsBodyHtml = true
};
mailMessage.To.Add(new MailAddress(winner.UserEmail));
var calendarData = GenerateCalendarEvent(winner.Event);
using (var memoryStream = new MemoryStream(Encoding.Default.GetBytes(calendarData)))
{
mailMessage.Attachments.Add(new Attachment(memoryStream, "event.vcs"));
}
if (emailSettings.WriteAsFile)
{
mailMessage.BodyEncoding = Encoding.ASCII;
}
return SendEmail(mailMessage);
}