private void _sendEmail(String UserName, String EmailAddress, String Subject, String MessageBody) { CswMail _CswMail = _CswNbtResources.CswMail; CswMailMessage MailMessage = new CswMailMessage { Recipient = EmailAddress, RecipientDisplayName = UserName, Subject = Subject, Content = MessageBody, Format = CswEnumMailMessageBodyFormat.HTML }; if (_CswMail.send(MailMessage)) { _CswNbtResources.logMessage("Rapid Loader email to " + UserName + " at " + EmailAddress + " (succeeded);"); } else { _CswNbtResources.logMessage("Rapid Loader email to " + UserName + " at " + EmailAddress + " (failed: " + _CswMail.Status + ");"); } }
}//_generateErrorMessage() private void _emailErrors(CswNbtObjClassBatchOp BatchNode) { if (null != _User) { if (false == _User.EmailProperty.Empty) { CswMail cswMail = _CswNbtResources.CswMail; string Subject = BatchNode.OpName.Text; string Message = "The batch operation " + BatchNode.OpName.Text + " was completed with the following error messages: " + Environment.NewLine + Environment.NewLine; JArray BatchLog = BatchNode.Log.CommentsJson; List <string> HumanReadableLog = (from JObject comment in BatchLog select CswConvert.ToString(comment["message"])).ToList(); Message += HumanReadableLog.Aggregate("", (current, ErrorMessage) => current + (ErrorMessage + Environment.NewLine)); string Email = _User.Email; string DisplayName = _User.FirstName + " " + _User.LastName; CswMailMessage mailMessage = CswMail.makeMailMessage(Subject, Message, Email, DisplayName); if (cswMail.send(mailMessage)) { BatchNode.appendToLog("Batch operation log message emailed to " + _User.Username + " successfully."); } else { BatchNode.appendToLog("Batch operation log message email to " + _User.Username + " failed."); } } else { BatchNode.appendToLog("Could not email log to " + _User.Username + " because they have not provided an email address."); } } else { BatchNode.appendToLog("The user does not exist."); } }//_emailErrors()
} //processMailReport() private string _sendMailMessage(CswNbtResources _CswNbtResources, CswNbtObjClassMailReport CurrentMailReport, string MailReportMessage, string LastName, string FirstName, string UserName, string Subject, string CurrentEmailAddress, DataTable ReportTable) { string ReturnVal = string.Empty; CswMail CswMail = _CswNbtResources.CswMail; ReturnVal += "Recipients: "; CswMailMessage MailMessage = new CswMailMessage(); MailMessage.Recipient = CurrentEmailAddress; MailMessage.RecipientDisplayName = FirstName + " " + LastName; MailMessage.Subject = Subject; MailMessage.Content = MailReportMessage; MailMessage.Format = CswEnumMailMessageBodyFormat.HTML; if (null != ReportTable) { string TableAsCSV = ((CswDataTable)ReportTable).ToCsv(); byte[] Buffer = new System.Text.UTF8Encoding().GetBytes(TableAsCSV); System.IO.MemoryStream MemoryStream = new System.IO.MemoryStream(Buffer, false); MailMessage.Attachment = MemoryStream; MailMessage.AttachmentDisplayName = CurrentMailReport.Node.NodeName + ".csv"; } if (CswMail.send(MailMessage)) { ReturnVal += UserName + " at " + CurrentEmailAddress + " (succeeded); "; } else { ReturnVal += UserName + " at " + CurrentEmailAddress + " (failed: " + CswMail.Status + "); "; } return(ReturnVal); }//_sendMailMessage()