/// <summary> /// Sends a test e-mail message. /// </summary> protected void SendEmail() { // Initialize message EmailMessage email = new EmailMessage { From = txtFrom.Text, Recipients = txtTo.Text, Subject = TextHelper.LimitLength(txtSubject.Text.Trim(), 450), EmailFormat = EmailFormatEnum.Html, Body = txtText.Text }; // Attach file if something was uploaded if ((FileUploader.PostedFile != null) && (FileUploader.PostedFile.InputStream != null)) { email.Attachments.Add(new Attachment(FileUploader.PostedFile.InputStream, Path.GetFileName(FileUploader.PostedFile.FileName))); } // Initialize SMTP server object SMTPServerInfo smtpServer = new SMTPServerInfo { ServerName = txtServer.Text, ServerUserName = txtUserName.Text, ServerPassword = EncryptionHelper.EncryptData(txtPassword.Text), ServerUseSSL = chkSSL.Checked }; string siteName = SiteContext.CurrentSiteName ?? string.Empty; EmailSender.SendTestEmail(siteName, email, smtpServer); }
protected void Page_Load(object sender, EventArgs e) { smtpServerId = QueryHelper.GetInteger("objectid", 0); if (smtpServerId <= 0) { pnlAvailability.Visible = false; return; } EditedObject = smtpServer = SMTPServerInfoProvider.GetSMTPServerInfo(smtpServerId); if (!RequestHelper.IsPostBack()) { if (smtpServer.ServerIsGlobal) { rblSites.SelectedIndex = 0; usSites.Enabled = false; } else { rblSites.SelectedIndex = 1; usSites.Enabled = true; LoadSiteBindings(); } } usSites.OnSelectionChanged += usSites_OnSelectionChanged; rblSites.SelectedIndexChanged += rblSites_SelectedIndexChanged; }
protected void Page_Load(object sender, EventArgs e) { smtpServerId = QueryHelper.GetInteger("smtpserverid", 0); if (smtpServerId <= 0) { pnlAvailability.Visible = false; return; } EditedObject = smtpServer = SMTPServerInfoProvider.GetSMTPServerInfo(smtpServerId); if (!RequestHelper.IsPostBack()) { if (smtpServer.ServerIsGlobal) { rblSites.SelectedIndex = 0; usSites.Enabled = false; } else { rblSites.SelectedIndex = 1; usSites.Enabled = true; LoadSiteBindings(); } } usSites.OnSelectionChanged += usSites_OnSelectionChanged; rblSites.SelectedIndexChanged += rblSites_SelectedIndexChanged; }
private void Save() { string validationResult = new Validator() .NotEmpty(txtServerName.Text, rfvServerName.ErrorMessage) .Result; if (!string.IsNullOrEmpty(validationResult)) { ShowError(validationResult); return; } try { SMTPServerPriorityEnum priority = (SMTPServerPriorityEnum)Enum.Parse(typeof(SMTPServerPriorityEnum), ddlPriorities.SelectedValue); SMTPServerInfo smtpServer = SMTPServerInfoProvider.CreateSMTPServer(txtServerName.Text, txtUserName.Text, txtPassword.Text, chkUseSSL.Checked, priority); if (chkAssign.Checked && currentSite != null) { SMTPServerSiteInfoProvider.AddSMTPServerToSite(smtpServer.ServerID, currentSite.SiteID); } URLHelper.Redirect(string.Format("Frameset.aspx?smtpserverid={0}&saved=1", smtpServer.ServerID)); } catch (Exception e) { ShowError(e.Message); return; } }
/// <summary> /// Synchronously sends an e-mail through the SMTP server. /// </summary> /// <param name="siteName">Site name</param> /// <param name="message">E-mail message</param> /// <param name="smtpServer">SMTP server</param> protected override void SendEmailInternal(string siteName, MailMessage message, SMTPServerInfo smtpServer) { base.SendEmailInternal(siteName, message, smtpServer); string detail = string.Format("E-mail from {0} through {1} was sent (synchronously)", message.From.Address, smtpServer.ServerName); EventLogProvider.LogInformation("CMSCustom", "MyCustomEmailProvider", detail); }
/// <summary> /// Asynchronously sends an email through the SMTP server. /// </summary> /// <param name="siteName">Site name</param> /// <param name="message">Email message</param> /// <param name="smtpServer">SMTP server</param> /// <param name="emailToken">Email token that represents the message being sent</param> protected override void SendEmailAsyncInternal(string siteName, MailMessage message, SMTPServerInfo smtpServer, EmailToken emailToken) { //Send the email via SendGrid SendSendGridEmail(message); CustomCompletedEventArgs args = new CustomCompletedEventArgs(null, false, emailToken); OnSendCompleted(args); }
protected void Page_Load(object sender, EventArgs e) { smtpServer = (SMTPServerInfo)EditedObject; rfvServerName.ErrorMessage = GetString("SMTPServer_New.NoServerName"); ddlPriorities.Items.Add(new ListItem("SMTPServerPriorityEnum.Low", SMTPServerPriorityEnum.Low.ToString())); ddlPriorities.Items.Add(new ListItem("SMTPServerPriorityEnum.Normal", SMTPServerPriorityEnum.Normal.ToString())); ddlPriorities.Items.Add(new ListItem("SMTPServerPriorityEnum.High", SMTPServerPriorityEnum.High.ToString())); if (!RequestHelper.IsPostBack()) { LoadValues(); } }
/// <summary> /// Synchronously sends an email through the SMTP server. /// </summary> /// <param name="siteName">Site name</param> /// <param name="message">Email message</param> /// <param name="smtpServer">SMTP server</param> protected override void SendEmailInternal(string siteName, MailMessage message, SMTPServerInfo smtpServer) { //Send the email via SendGrid SendSendGridEmail(message); }
protected override void SendEmailAsyncInternal(string siteName, MailMessage message, SMTPServerInfo smtpServer, EmailToken emailToken) { ThreadPool.QueueUserWorkItem(userData => { CMSThread.AllowEmptyContext(); DispatchSendGridEmail(message, true, emailToken); }); }
protected override void SendEmailInternal(string siteName, MailMessage message, SMTPServerInfo smtpServer) { DispatchSendGridEmail(message); }
/// <summary> /// Sends a test e-mail message. /// </summary> protected void SendEmail() { // Initialize message EmailMessage email = new EmailMessage { From = txtFrom.Text, Recipients = txtTo.Text, Subject = TextHelper.LimitLength(txtSubject.Text.Trim(), 450), EmailFormat = EmailFormatEnum.Html, Body = txtText.Text }; // Attach file if something was uploaded if ((FileUploader.PostedFile != null) && (FileUploader.PostedFile.InputStream != null)) { email.Attachments.Add(new Attachment(FileUploader.PostedFile.InputStream, Path.GetFileName(FileUploader.PostedFile.FileName))); } // Initialize SMTP server object SMTPServerInfo smtpServer = new SMTPServerInfo { ServerName = txtServer.Text, ServerUserName = txtUserName.Text, ServerPassword = txtPassword.Text, ServerUseSSL = chkSSL.Checked }; string siteName = CMSContext.CurrentSiteName ?? string.Empty; EmailSender.SendTestEmail(siteName, email, smtpServer); }