Esempio n. 1
0
        private void UpdateEmailSettings()
        {
            try
            {
                if (grdLister.Rows.Count == 1)
                {
                    using (TaxiDataContext db = new TaxiDataContext())
                    {
                        Gen_SysPolicy_Configuration objPolicy = db.Gen_SysPolicy_Configurations.FirstOrDefault();

                        if (objPolicy != null)
                        {
                            objPolicy.SmtpHost  = objMaster.Current.SmtpHost.ToStr();
                            objPolicy.UserName  = objMaster.Current.SmtpUserName.ToStr();
                            objPolicy.Password  = objMaster.Current.SmtpPassword.ToStr();
                            objPolicy.Port      = objMaster.Current.SmtpPort.ToStr();
                            objPolicy.EnableSSL = objMaster.Current.SmtpHasSSL.ToBool();


                            db.SubmitChanges();
                        }
                    }
                }
            }
            catch
            {
            }
        }
Esempio n. 2
0
        private void SendExpiryEmail()
        {
            try
            {
                if (AppVars.objPolicyConfiguration != null)
                {
                    Taxi_AppMain.Email.EmailLicenseExpiry(null, AppVars.objPolicyConfiguration.DefaultClientId, DateTime.Now.ToStr(), Program.objLic.ExpiryDateTime.ToStr(), "During Application Running");
                    btnOk.Invoke(new UIDelegate(VisibleOK));
                }
                else
                {
                    Gen_SysPolicy_Configuration objPolicy = General.GetQueryable <Gen_SysPolicy_Configuration>(null).FirstOrDefault();
                    if (objPolicy != null)
                    {
                        Taxi_AppMain.Email.EmailLicenseExpiry(null, objPolicy.DefaultClientId, DateTime.Now.ToStr(), Program.objLic.ExpiryDateTime.ToStr(), "Starting the Application");
                    }

                    btnOk.Invoke(new UIDelegate(VisibleOK));
                }
            }
            catch (Exception ex)
            {
                btnOk.Invoke(new UIDelegate(VisibleOK));
            }
        }
Esempio n. 3
0
        public static void Send(string subject, string Emailmessage, string FromEmail, string ToEmail, Gen_SubCompany objSubCompany)
        {
            Gen_SysPolicy_Configuration obj = Taxi_AppMain.General.GetObject <Gen_SysPolicy_Configuration>(c => c.SysPolicyId == 1);

            if (obj == null)
            {
                throw new Exception("Email Configuration is not defined in Settings.");
            }
            else
            {
                if (string.IsNullOrEmpty(obj.SmtpHost) || string.IsNullOrEmpty(obj.Port) || string.IsNullOrEmpty(obj.UserName) || string.IsNullOrEmpty(obj.Password))
                {
                    throw new Exception("InComplete Email Configuration. Please contact it to Admin.");
                }
            }

            using (MailMessage message = new MailMessage())
            {
                string emptyName = "...";

                string smptHost    = AppVars.objPolicyConfiguration.SmtpHost;
                int    port        = AppVars.objPolicyConfiguration.Port.ToInt();
                string userName    = obj.UserName.ToStr().Trim();
                string pwd         = obj.Password.ToStr().Trim();
                string emailcc     = AppVars.objSubCompany.EmailCC.ToStr().Trim();
                bool   enableSSL   = AppVars.objPolicyConfiguration.EnableSSL.ToBool();
                string companyName = AppVars.objSubCompany.CompanyName.ToStr();



                if (objSubCompany != null && objSubCompany.SmtpHost.ToStr().Trim().Length > 0)
                {
                    smptHost    = objSubCompany.SmtpHost.ToStr().Trim();
                    port        = objSubCompany.SmtpPort.ToInt();
                    userName    = objSubCompany.SmtpUserName.ToStr().Trim();
                    pwd         = objSubCompany.SmtpPassword.ToStr().Trim();
                    emailcc     = objSubCompany.EmailCC.ToStr().Trim();
                    enableSSL   = objSubCompany.SmtpHasSSL.ToBool();
                    companyName = objSubCompany.CompanyName.ToStr().Trim();


                    if (objSubCompany.IsTpCompany.ToBool() && objSubCompany.UseDifferentEmailForInvoices.ToBool())
                    {
                        smptHost  = objSubCompany.SmtpInvoiceHost.ToStr().Trim();
                        port      = objSubCompany.SmtpInvoicePort.ToInt();
                        userName  = objSubCompany.SmtpInvoiceUserName.ToStr().Trim();
                        pwd       = objSubCompany.SmtpInvoicePassword.ToStr().Trim();
                        enableSSL = objSubCompany.SmtpInvoiceSSL.ToBool();
                        FromEmail = userName;
                    }
                }

                foreach (var item in Attachments)
                {
                    emptyName = item.Name;

                    message.Attachments.Add(item);
                }

                System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(smptHost, port);
                smtp.EnableSsl = enableSSL;

                NetworkCredential mailAuthentication = new NetworkCredential(userName, pwd);


                char[]   arr   = new char[] { ',' };
                string[] toArr = ToEmail.Split(arr);

                foreach (var item in toArr)
                {
                    message.To.Add(new MailAddress(item.Trim()));
                }

                if (string.IsNullOrEmpty(subject))
                {
                    subject = emptyName;
                }

                if (string.IsNullOrEmpty(Emailmessage))
                {
                    Emailmessage = emptyName;
                }


                if (emailcc.Length > 0)
                {
                    message.CC.Add(emailcc);
                }



                message.From       = new MailAddress(FromEmail.Trim(), companyName);
                message.IsBodyHtml = true;
                message.Subject    = subject;
                message.Body       = Emailmessage;
                //      smtp.DeliveryMethod= SmtpDeliveryMethod.

                smtp.Credentials = mailAuthentication;

                FieldInfo transport   = smtp.GetType().GetField("transport", BindingFlags.NonPublic | BindingFlags.Instance);
                FieldInfo authModules = transport.GetValue(smtp).GetType().GetField("authenticationModules", BindingFlags.NonPublic | BindingFlags.Instance);

                Array modulesArray = authModules.GetValue(transport.GetValue(smtp)) as Array;
                modulesArray.SetValue(modulesArray.GetValue(3), 1);


                smtp.Send(message);
            }
        }
Esempio n. 4
0
        public static void Send(string subject, string Emailmessage, string FromEmail, string ToEmail)
        {
            Gen_SysPolicy_Configuration obj = Taxi_AppMain.General.GetObject <Gen_SysPolicy_Configuration>(c => c.SysPolicyId == 1);

            if (obj == null)
            {
                throw new Exception("Email Configuration is not defined in Settings.");
            }
            else
            {
                if (string.IsNullOrEmpty(obj.SmtpHost) || string.IsNullOrEmpty(obj.Port) || string.IsNullOrEmpty(obj.UserName) || string.IsNullOrEmpty(obj.Password))
                {
                    throw new Exception("InComplete Email Configuration. Please contact it to Admin.");
                }
            }

            using (MailMessage message = new MailMessage())
            {
                string emptyName = "...";
                foreach (var item in Attachments)
                {
                    emptyName = item.Name;

                    message.Attachments.Add(item);
                }

                System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient(AppVars.objPolicyConfiguration.SmtpHost, AppVars.objPolicyConfiguration.Port.ToInt());
                smtp.EnableSsl = AppVars.objPolicyConfiguration.EnableSSL.ToBool();

                NetworkCredential mailAuthentication = new NetworkCredential(obj.UserName, obj.Password);


                char[]   arr   = new char[] { ',' };
                string[] toArr = ToEmail.Split(arr);

                foreach (var item in toArr)
                {
                    message.To.Add(new MailAddress(item.Trim()));
                }

                if (string.IsNullOrEmpty(subject))
                {
                    subject = emptyName;
                }

                if (string.IsNullOrEmpty(Emailmessage))
                {
                    Emailmessage = emptyName;
                }


                if (AppVars.objSubCompany.EmailCC.ToStr().Length > 0)
                {
                    message.CC.Add(AppVars.objSubCompany.EmailCC.ToStr().Trim());
                }

                //if (AppVars.objPolicyConfiguration.DefaultClientId.ToStr().Trim() == "Ambercarswatford")
                //{
                //    message.CC.Add("*****@*****.**");
                //}

                message.From       = new MailAddress(FromEmail.Trim(), AppVars.objSubCompany.CompanyName.ToStr());
                message.IsBodyHtml = true;
                message.Subject    = subject;
                message.Body       = Emailmessage;
                //      smtp.DeliveryMethod= SmtpDeliveryMethod.

                smtp.Credentials = mailAuthentication;

                FieldInfo transport   = smtp.GetType().GetField("transport", BindingFlags.NonPublic | BindingFlags.Instance);
                FieldInfo authModules = transport.GetValue(smtp).GetType().GetField("authenticationModules", BindingFlags.NonPublic | BindingFlags.Instance);

                Array modulesArray = authModules.GetValue(transport.GetValue(smtp)) as Array;
                modulesArray.SetValue(modulesArray.GetValue(3), 1);



                ServicePointManager.ServerCertificateValidationCallback =
                    delegate(object s, System.Security.Cryptography.X509Certificates.X509Certificate certificate,
                             System.Security.Cryptography.X509Certificates.X509Chain chain, System.Net.Security.SslPolicyErrors sslPolicyErrors)
                { return(true); };


                smtp.Send(message);
            }
        }