示例#1
0
    public void test_Click(object sender, EventArgs e)
    {
        TransitAccountEmailMessage message = new TransitAccountEmailMessage();

        message.Body       = string.Format("This e-mail was sent {0}.", SessionManager.Adjust(DateTime.UtcNow));
        message.Subject    = "SnCore mail message system test";
        message.DeleteSent = true;
        message.MailTo     = message.MailFrom = SessionManager.AccountService.GetActiveEmailAddress(
            SessionManager.Ticket, SessionManager.AccountId);
        SessionManager.AccountService.SendAccountEmailMessage(
            SessionManager.Ticket, message);
        ReportInfo("Test successful.");
    }
示例#2
0
    public void send_Click(object Sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(inputEmailAddress.Text))
        {
            throw new Exception("Missing E-Mail");
        }

        TransitAccountEmailMessage message = new TransitAccountEmailMessage();

        message.Body       = GetContent();
        message.Subject    = inputSubject.Text;
        message.DeleteSent = true;
        ExceptionCollection exceptions    = new ExceptionCollection();
        List <string>       invalidemails = new List <string>();

        foreach (string address in inputEmailAddress.Text.Split("\n".ToCharArray()))
        {
            if (string.IsNullOrEmpty(address) || string.IsNullOrEmpty(address.Trim()))
            {
                continue;
            }

            try
            {
                message.MailTo = new MailAddress(address.Trim()).ToString();
                SessionManager.AccountService.CreateOrUpdateAccountEmailMessage(
                    SessionManager.Ticket, message);
            }
            catch (Exception ex)
            {
                invalidemails.Add(address);
                exceptions.Add(new Exception(string.Format("Error sending message to \"{0}\".\n{1}",
                                                           address.Trim(), ex.Message), ex));
            }
        }

        inputEmailAddress.Text = string.Join("\n", invalidemails.ToArray());
        exceptions.Throw();
        Redirect(Url);
    }
示例#3
0
    public void send_Click(object Sender, EventArgs e)
    {
        if (string.IsNullOrEmpty(inputEmailAddress.Text))
        {
            throw new Exception("Missing E-Mail");
        }

        TransitAccountEmailMessage message = new TransitAccountEmailMessage();
        message.Body = GetContent();
        message.Subject = inputSubject.Text;
        message.DeleteSent = true;
        ExceptionCollection exceptions = new ExceptionCollection();
        List<string> invalidemails = new List<string>();
        foreach (string address in inputEmailAddress.Text.Split("\n".ToCharArray()))
        {
            if (string.IsNullOrEmpty(address) || string.IsNullOrEmpty(address.Trim()))
                continue;

            try
            {
                message.MailTo = new MailAddress(address.Trim()).ToString();
                SessionManager.AccountService.CreateOrUpdateAccountEmailMessage(
                    SessionManager.Ticket, message);
            }
            catch (Exception ex)
            {
                invalidemails.Add(address);
                exceptions.Add(new Exception(string.Format("Error sending message to \"{0}\".\n{1}",
                    address.Trim(), ex.Message), ex));
            }
        }

        inputEmailAddress.Text = string.Join("\n", invalidemails.ToArray());
        exceptions.Throw();
        Redirect(Url);
    }
 public void test_Click(object sender, EventArgs e)
 {
     TransitAccountEmailMessage message = new TransitAccountEmailMessage();
     message.Body = string.Format("This e-mail was sent {0}.", SessionManager.Adjust(DateTime.UtcNow));
     message.Subject = "SnCore mail message system test";
     message.DeleteSent = true;
     message.MailTo = message.MailFrom = SessionManager.AccountService.GetActiveEmailAddress(
         SessionManager.Ticket, SessionManager.AccountId);
     SessionManager.AccountService.SendAccountEmailMessage(
         SessionManager.Ticket, message);
     ReportInfo("Test successful.");
 }
示例#5
0
 /// <summary>
 /// Send an AccountEmailMessage immediately (administrators only).
 /// </summary>
 /// <param name="ticket">authentication ticket</param>
 /// <param name="message">message</param>
 public void SendAccountEmailMessage(string ticket, TransitAccountEmailMessage message)
 {
     using (SnCore.Data.Hibernate.Session.OpenConnection())
     {
         ISession session = SnCore.Data.Hibernate.Session.Current;
         ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);
         ManagedAccountEmailMessage m_instance = new ManagedAccountEmailMessage(session);
         m_instance.Send(sec, message);
     }
 }
示例#6
0
 public int CreateOrUpdateAccountEmailMessage(string ticket, TransitAccountEmailMessage message)
 {
     return WebServiceImpl<TransitAccountEmailMessage, ManagedAccountEmailMessage, AccountEmailMessage>.CreateOrUpdate(
         ticket, message);
 }