protected virtual void SendMail()
{
var emailHost = WebConfigurationManager.AppSettings[MailHostAppsettingKey];
if (string.IsNullOrEmpty(emailHost))
return;
var parentForm = this.LoadContentList() as Form;
if (parentForm == null)
return;
var itemContent = Content.Create(this);
var sc = new SmtpClient(emailHost);
var from = GetSender(parentForm);
var emailList = String.Empty;
if (!String.IsNullOrEmpty(parentForm.EmailList) )
{
emailList = parentForm.EmailList.Trim(new char[] { ' ', ';', ',' })
.Replace(";", ",").Replace("\n", " ").Replace("\t", " ").Replace("\r", " ");
}
// send mail to administrator
if (!string.IsNullOrEmpty(emailList))
{
var ms = new MailMessage(from, emailList)
{
Subject = string.IsNullOrEmpty(parentForm.DisplayName)
? parentForm.Name
: ReplaceField(parentForm.DisplayName, false, itemContent),
Body = string.IsNullOrEmpty(parentForm.EmailTemplate)
? CreateEmailText()
: ReplaceField(parentForm.EmailTemplate, false, itemContent),
IsBodyHtml = !string.IsNullOrEmpty(parentForm.EmailTemplate)
};
if (Attachments.Count > 0)
foreach (var a in Attachments)
ms.Attachments.Add(a);
sc.Send(ms);
}
//============= Send notification email
// send mail to submitter
var submitterAddress = GetSubmitterAddress(parentForm.EmailField, itemContent);
if (!string.IsNullOrEmpty(submitterAddress))
{
string fromField = GetSenderOfSubmiter(parentForm);
// send mail to submitter
var ms = new MailMessage(fromField, submitterAddress)
{
Subject = string.IsNullOrEmpty(parentForm.TitleSubmitter)
? parentForm.Name
: ReplaceField(parentForm.TitleSubmitter, true, itemContent),
Body = string.IsNullOrEmpty(parentForm.EmailTemplateSubmitter)
? CreateEmailText()
: ReplaceField(parentForm.EmailTemplateSubmitter, true, itemContent),
IsBodyHtml = !string.IsNullOrEmpty(parentForm.EmailTemplateSubmitter)
};
if (Attachments.Count > 0)
foreach (var a in Attachments)
ms.Attachments.Add(a);
sc.Send(ms);
}
}