示例#1
0
        /// <summary>
        /// Date Created:   10/11/2011
        /// Created By:     Josephine Gad
        /// (description)   Send Email
        /// --------------------------------------
        /// Date Modified:   06/Dec/2012
        /// Created By:      Josephine Gad
        /// (description)    Add security to email address by using encrypt/decrypt
        ///                  Get the email credentials from web config
        ///                  Use also the SHRSS Spport email from web config
        /// --------------------------------------
        /// </summary>
        /// <param name="sFrom"></param>
        /// <param name="sTo"></param>
        /// <param name="sSubject"></param>
        /// <param name="sMessage"></param>
        public static void SendEmail(string sFrom, string sTo, string sSubject, string sMessage)
        {
            try
            {
                string sPassphrase = "Great Vacations Begin With Great Employees!";
                string sUser       = DecryptString(ConfigurationSettings.AppSettings["TravelmartMailUser"].ToString(), sPassphrase);
                string sPwd        = DecryptString(ConfigurationSettings.AppSettings["TravelmartMailPassword"].ToString(), sPassphrase);

                string sEmail = ConfigurationSettings.AppSettings["RCCLSupportEmail"].ToString();

                if (sTo != "")
                {
                    string sServer = ConfigurationSettings.AppSettings["TravelmartMailServer"].ToString();
                    int    iPort   = GlobalCode.Field2Int(ConfigurationSettings.AppSettings["TravelmartMailPort"]);

                    sFrom = sEmail;
                    MailAddress emailFrom = new MailAddress(sFrom);
                    MailAddress emailTo   = new MailAddress(sTo);
                    //MailMessage emailMsg = new MailMessage(emailFrom, emailTo);
                    using (MailMessage emailMsg = new MailMessage(emailFrom, emailTo))
                    {
                        emailMsg.Subject    = sSubject;
                        emailMsg.IsBodyHtml = true;
                        emailMsg.Body       = sMessage;
                        SmtpClient emailClient = new SmtpClient(sServer, iPort);
                        emailClient.Credentials = new System.Net.NetworkCredential(sUser, sPwd);
                        emailClient.EnableSsl   = true;
                        emailClient.Send(emailMsg);
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#2
0
        /// <summary>
        /// Date Created:  14/11/2011
        /// Created By:    Josephine Gad
        /// (description)  Send Email with attachment
        /// --------------------------------------------------------------------------------------------------------------
        /// Date Modified: 24/02/2012
        /// Modified By:   Charlene Remotigue
        /// (description)  Send multiple attachments
        /// --------------------------------------------------------------------------------------------------------------
        /// Date Modified: 27/03/2012
        /// Modified By:   Gabriel Oquialda
        /// (description)  Send multiple recipient and cc
        /// --------------------------------------------------------------------------------------------------------------
        /// Date Modified: 29/03/2012
        /// Modified By:   Gabriel Oquialda
        /// (description)  Added configuration settings/appsettings key for smtp network username and password (encrypted)
        ///                Added md5 decryption for encrypted smtp network username and password
        /// --------------------------------------
        /// Date Modified:   06/Dec/2012
        /// Created By:      Josephine Gad
        /// (description)    Get the email credentials from web config
        /// --------------------------------------
        /// </summary>
        /// <param name="sFrom"></param>
        /// <param name="sTo"></param>
        /// <param name="sCc"></param>
        /// <param name="sSubject"></param>
        /// <param name="sMessage"></param>
        /// <param name="attachment"></param>
        public static void SendEmailWithAttachment(string sFrom, string sTo, string sCc, string sSubject, string sMessage, string attachment)
        {
            char[] charsToTrim = { ';' };
            string sTos        = sTo.TrimEnd(charsToTrim);
            string sCcs        = sCc.TrimEnd(charsToTrim);

            string[] attachments = attachment.Split(';');
            string[] recipients  = sTos.Split(';');
            string[] carboncopy;

            try
            {
                // Encryption (for debugging purpose only)
                //string EncryptedNetworkUser = EncryptString(TravelmartNetworkUser, TravelmartPassphrase);
                //string EncryptedNetworkPass = EncryptString(TravelmartNetworkPass, TravelmartPassphrase);

                // Decryption
                //string DecryptedNetworkUser = DecryptString(TravelmartNetworkUser, TravelmartPassphrase);
                //string DecryptedNetworkPass = DecryptString(TravelmartNetworkPass, TravelmartPassphrase);

                if (sTo != "")
                {
                    string sPassphrase = "Great Vacations Begin With Great Employees!";
                    string sUser       = DecryptString(ConfigurationSettings.AppSettings["TravelmartMailUser"].ToString(), sPassphrase);
                    string sPwd        = DecryptString(ConfigurationSettings.AppSettings["TravelmartMailPassword"].ToString(), sPassphrase);

                    string sEmail        = ConfigurationSettings.AppSettings["RCCLSupportEmail"].ToString();
                    string sEmailDisplay = ConfigurationSettings.AppSettings["RCCLSupportEmailDisplay"].ToString();

                    string sServer = ConfigurationSettings.AppSettings["TravelmartMailServer"].ToString();
                    int    iPort   = GlobalCode.Field2Int(ConfigurationSettings.AppSettings["TravelmartMailPort"]);

                    bool isEnableSSL = GlobalCode.Field2Bool(ConfigurationSettings.AppSettings["EnableSSL"]);

                    sFrom = sEmail;

                    MailMessage emailMsg = new MailMessage();

                    emailMsg.From = new MailAddress(sFrom, sEmailDisplay);

                    for (int i = 0; i < recipients.Length; i++)
                    {
                        MailAddress emailTo = new MailAddress(recipients[i]);
                        emailMsg.To.Add(emailTo);
                    }

                    if (sCcs != "")
                    {
                        carboncopy = sCcs.Split(';');

                        for (int i = 0; i < carboncopy.Length; i++)
                        {
                            MailAddress emailCc = new MailAddress(carboncopy[i]);
                            emailMsg.CC.Add(emailCc);
                        }
                    }

                    for (int i = 0; i < attachments.Length; i++)
                    {
                        Attachment data = new Attachment(attachments[i], MediaTypeNames.Application.Octet);
                        emailMsg.Attachments.Add(data);
                    }

                    emailMsg.Subject    = sSubject;
                    emailMsg.IsBodyHtml = true;
                    emailMsg.Body       = sMessage;

                    //details from web config
                    //SmtpClient emailClient = new SmtpClient();
                    //emailClient.Host = "mail.ptc.com.ph";
                    //emailClient.Host = ConfigurationSettings.AppSettings["TravelmartMailServer"].ToString();

                    SmtpClient emailClient = new SmtpClient(sServer, iPort);
                    emailClient.Credentials = new System.Net.NetworkCredential(sUser, sPwd);
                    emailClient.EnableSsl   = isEnableSSL;
                    emailClient.Send(emailMsg);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }