public bool sendMailForChangePassword(IStoreSecurity security, SMTPDetails sMTPDetails, string EmailId, string content, int TenantId)
        {
            _SecurityRepository = security;
            CommonService commonService = new CommonService();


            return(_SecurityRepository.sendMailForChangePassword(sMTPDetails, EmailId, content, TenantId));
        }
示例#2
0
        public ResponseModel ForgetPassword(string EmailId)
        {
            ResponseModel objResponseModel = new ResponseModel();

            try
            {
                /////Validate User
                securityCaller securityCaller = new securityCaller();
                Authenticate   authenticate   = securityCaller.validateUserEmailId(new SecurityService(Cache, Db), EmailId);
                if (authenticate.UserMasterID > 0)
                {
                    MasterCaller masterCaller = new MasterCaller();
                    SMTPDetails  sMTPDetails  = masterCaller.GetSMTPDetails(new MasterServices(Cache, Db), authenticate.TenantId);

                    CommonService commonService    = new CommonService();
                    string        encryptedEmailId = commonService.Encrypt(EmailId);
                    string        url = Configuration.GetValue <string>("websiteURL") + "/userforgotPassword?Id:" + encryptedEmailId;
                    // string body = "Hello, This is Demo Mail for testing purpose. <br/>" + url;

                    string content = "";
                    string subject = "";

                    securityCaller.GetForgetPassowrdMailContent(new SecurityService(Cache, Db), authenticate.TenantId, url, EmailId, out content, out subject);

                    bool isUpdate = securityCaller.sendMail(new SecurityService(Cache, Db), sMTPDetails, EmailId, subject, content, authenticate.TenantId);

                    if (isUpdate)
                    {
                        objResponseModel.Status       = true;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.Success;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.Success);
                        objResponseModel.ResponseData = "Mail sent successfully";
                    }
                    else
                    {
                        objResponseModel.Status       = false;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.InternalServerError;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.InternalServerError);
                        objResponseModel.ResponseData = "Mail sent failure";
                    }
                }
                else
                {
                    objResponseModel.Status       = false;
                    objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.RecordNotFound;
                    objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.RecordNotFound);
                    objResponseModel.ResponseData = "Sorry User does not exist or active";
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(objResponseModel);
        }
示例#3
0
        /// <summary>
        /// Send Email
        /// </summary>
        /// <param name="smtpDetails"></param>
        /// <param name="emailToAddress"></param>
        /// <param name="subject"></param>
        /// <param name="body"></param>
        /// <returns></returns>
        public bool SendEmail(SMTPDetails smtpDetails, string emailToAddress, string subject, string body, string[] cc = null, string[] bcc = null, int tenantId = 0)
        {
            bool isMailSent = false;

            try
            {
                SmtpClient smtpClient = new SmtpClient(smtpDetails.SMTPServer, Convert.ToInt32(smtpDetails.SMTPPort));
                smtpClient.EnableSsl             = smtpDetails.EnableSsl;
                smtpClient.DeliveryMethod        = SmtpDeliveryMethod.Network;
                smtpClient.UseDefaultCredentials = true;
                smtpClient.Credentials           = new NetworkCredential(smtpDetails.FromEmailId, smtpDetails.Password);
                {
                    using (MailMessage message = new MailMessage())
                    {
                        message.From = new MailAddress(smtpDetails.FromEmailId, "EasyRewardz");

                        if (cc != null)
                        {
                            if (cc.Length > 0)
                            {
                                for (int i = 0; i < cc.Length; i++)
                                {
                                    message.CC.Add(cc[i]);
                                }
                            }
                        }

                        if (bcc != null)
                        {
                            if (bcc.Length > 0)
                            {
                                for (int k = 0; k < bcc.Length; k++)
                                {
                                    message.CC.Add(bcc[k]);
                                }
                            }
                        }
                        message.Subject    = subject == null ? "" : subject;
                        message.Body       = body == null ? "" : body;
                        message.IsBodyHtml = smtpDetails.IsBodyHtml;
                        message.To.Add(emailToAddress);

                        smtpClient.Send(message);
                    }
                }

                isMailSent = true;
            }
            catch (Exception ex)
            {
                throw;
            }
            return(isMailSent);
        }
示例#4
0
        /// <summary>
        ///Send mail for Change password
        /// <param name="sMTPDetails"></param>
        /// <param name="emailId"></param>
        ///  <param name="content"></param>
        ///   <param name="TenantId"></param>
        /// </summary>
        public bool sendMailForChangePassword(SMTPDetails sMTPDetails, string emailId, string content, int TenantId)
        {
            bool isSent = false;

            try
            {
                CommonService commonService = new CommonService();
                isSent = commonService.SendEmail(sMTPDetails, emailId, "EasyRewardz User Created", content, null, null, TenantId);

                return(isSent);
            }
            catch (Exception)
            {
                isSent = false;
            }

            return(isSent);
        }
示例#5
0
        /// <summary>
        ///Send mail for forget password
        /// <param name="sMTPDetails"></param>
        /// <param name="emailId"></param>
        /// <param name="subject"></param>
        ///  <param name="content"></param>
        ///   <param name="TenantId"></param>
        /// </summary>
        public bool sendMailForForgotPassword(SMTPDetails sMTPDetails, string emailId, string subject, string content, int TenantId)
        {
            bool isSent = false;

            try
            {
                CommonService commonService = new CommonService();
                isSent = commonService.SendEmail(sMTPDetails, emailId, subject, content, null, null, TenantId);

                return(isSent);
            }
            catch (Exception)
            {
                isSent = false;
            }

            return(isSent);
        }
示例#6
0
        public SMTPDetails GetSMTPDetails(int TenantID)
        {
            DataSet     ds          = new DataSet();
            SMTPDetails sMTPDetails = new SMTPDetails();

            try
            {
                MySqlCommand cmd = new MySqlCommand();

                if (conn != null && conn.State == ConnectionState.Closed)
                {
                    conn = Db.Connection;
                }
                cmd.Connection = conn;
                if (conn != null && conn.State == ConnectionState.Closed)
                {
                    conn.Open();
                }
                MySqlCommand cmd1 = new MySqlCommand("SP_getSMTPDetails", conn);
                cmd1.CommandType = CommandType.StoredProcedure;
                cmd1.Parameters.AddWithValue("@Tenant_ID", TenantID);
                MySqlDataAdapter da = new MySqlDataAdapter();
                da.SelectCommand = cmd1;
                da.Fill(ds);
                if (ds != null && ds.Tables[0] != null)
                {
                    sMTPDetails.EnableSsl   = Convert.ToBoolean(ds.Tables[0].Rows[0]["EnabledSSL"]);
                    sMTPDetails.SMTPPort    = Convert.ToString(ds.Tables[0].Rows[0]["SMTPPort"]);
                    sMTPDetails.FromEmailId = Convert.ToString(ds.Tables[0].Rows[0]["EmailUserID"]);
                    sMTPDetails.IsBodyHtml  = Convert.ToBoolean(ds.Tables[0].Rows[0]["IsBodyHtml"]);
                    sMTPDetails.Password    = Convert.ToString(ds.Tables[0].Rows[0]["EmailPassword"]);
                    sMTPDetails.SMTPHost    = Convert.ToString(ds.Tables[0].Rows[0]["SMTPHost"]);
                    sMTPDetails.SMTPServer  = Convert.ToString(ds.Tables[0].Rows[0]["SMTPHost"]);
                }
            }
            catch (Exception ex)
            {
                throw (ex);
            }


            return(sMTPDetails);
        }
示例#7
0
        public ResponseModel SendMailforchangepassword(int userID, int IsStoreUser = 1)
        {
            CustomChangePassword customChangePassword = new CustomChangePassword();
            ResponseModel        objResponseModel     = new ResponseModel();
            int    statusCode    = 0;
            string statusMessage = "";

            try
            {
                string       token        = Convert.ToString(Request.Headers["X-Authorized-Token"]);
                Authenticate authenticate = new Authenticate();
                authenticate = SecurityService.GetAuthenticateDataFromTokenCache(Cache, SecurityService.DecryptStringAES(token));

                UserCaller userCaller = new UserCaller();

                customChangePassword = userCaller.SendMailforchangepassword(new UserServices(Cache, Db), userID, authenticate.TenantId, IsStoreUser);
                if (customChangePassword.UserID > 0 && customChangePassword.Password != null && customChangePassword.EmailID != null)
                {
                    MasterCaller   masterCaller     = new MasterCaller();
                    SMTPDetails    sMTPDetails      = masterCaller.GetSMTPDetails(new MasterServices(Cache, Db), authenticate.TenantId);
                    securityCaller securityCaller   = new securityCaller();
                    CommonService  commonService    = new CommonService();
                    string         encryptedEmailId = SecurityService.Encrypt(customChangePassword.EmailID);

                    string decriptedPassword = SecurityService.DecryptStringAES(customChangePassword.Password);
                    string url      = Configuration.GetValue <string>("websiteURL") + "/ChangePassword";
                    string body     = "Dear User, <br/>Please find the below details.  <br/><br/>" + "Your Email ID  : " + customChangePassword.EmailID + "<br/>" + "Your Password : "******"<br/><br/>" + "Click on Below link to change the Password <br/>" + url + "?Id:" + encryptedEmailId;
                    bool   isUpdate = securityCaller.sendMailForChangePassword(new SecurityService(Cache, Db), sMTPDetails, customChangePassword.EmailID, body, authenticate.TenantId);
                    if (isUpdate)
                    {
                        objResponseModel.Status       = true;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.Success;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.Success);
                        objResponseModel.ResponseData = "Mail sent successfully";
                    }
                    else
                    {
                        objResponseModel.Status       = false;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.InternalServerError;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.InternalServerError);
                        objResponseModel.ResponseData = "Mail sent failure";
                    }
                }

                else
                {
                    objResponseModel.Status       = false;
                    objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.RecordNotFound;
                    objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.RecordNotFound);
                    objResponseModel.ResponseData = "Sorry User does not exist or active";
                }

                /* StatusCode =
                 * isUpdate !=true ?
                 *     (int)EnumMaster.StatusCode.RecordNotFound : (int)EnumMaster.StatusCode.Success;
                 * statusMessage = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)StatusCode);
                 *
                 * objResponseModel.Status = true;
                 * objResponseModel.StatusCode = StatusCode;
                 * objResponseModel.Message = statusMessage;
                 * objResponseModel.ResponseData = "Email Sent";*/
            }
            catch (Exception)
            {
                throw;
            }

            return(objResponseModel);
        }
        public ResponseModel ForgetPassword(string EmailId)
        {
            ResponseModel objResponseModel = new ResponseModel();

            try
            {
                /////Validate User
                string X_Authorized_Programcode = Convert.ToString(Request.Headers["X-Authorized-Programcode"]);
                string X_Authorized_Domainname  = Convert.ToString(Request.Headers["X-Authorized-Domainname"]);
                string _data = "";
                if (X_Authorized_Programcode != null)
                {
                    X_Authorized_Programcode = SecurityService.DecryptStringAES(X_Authorized_Programcode);

                    RedisCacheService cacheService = new RedisCacheService(_radisCacheServerAddress);
                    if (cacheService.Exists("Con" + X_Authorized_Programcode))
                    {
                        _data = cacheService.Get("Con" + X_Authorized_Programcode);
                        _data = JsonConvert.DeserializeObject <string>(_data);
                    }
                }

                if (X_Authorized_Domainname != null)
                {
                    X_Authorized_Domainname = SecurityService.DecryptStringAES(X_Authorized_Domainname);
                }
                securityCaller securityCaller = new securityCaller();
                Authenticate   authenticate   = securityCaller.validateUserEmailId(new SecurityService(_data, _radisCacheServerAddress), EmailId);
                if (authenticate.UserMasterID > 0)
                {
                    MasterCaller masterCaller = new MasterCaller();
                    SMTPDetails  sMTPDetails  = masterCaller.GetSMTPDetails(new MasterServices(_data), authenticate.TenantId);

                    CommonService commonService    = new CommonService();
                    string        encryptedEmailId = commonService.Encrypt(EmailId);
                    string        url = X_Authorized_Domainname.TrimEnd('/') + "/storeUserforgotPassword?Id:" + encryptedEmailId;
                    // string body = "Hello, This is Demo Mail for testing purpose. <br/>" + url;

                    string content = "";
                    string subject = "";

                    securityCaller.GetForgetPassowrdMailContent(new SecurityService(_connectioSting), authenticate.TenantId, url, EmailId, out content, out subject);

                    bool isUpdate = securityCaller.sendMail(new SecurityService(_connectioSting), sMTPDetails, EmailId, subject, content, authenticate.TenantId);

                    if (isUpdate)
                    {
                        objResponseModel.Status       = true;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.Success;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.Success);
                        objResponseModel.ResponseData = "Mail sent successfully";
                    }
                    else
                    {
                        objResponseModel.Status       = false;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.InternalServerError;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.InternalServerError);
                        objResponseModel.ResponseData = "Mail sent failure";
                    }
                }
                else
                {
                    objResponseModel.Status       = false;
                    objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.RecordNotFound;
                    objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.RecordNotFound);
                    objResponseModel.ResponseData = "Sorry User does not exist or active";
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(objResponseModel);
        }
示例#9
0
 /// <summary>
 /// Send mail
 /// </summary>
 /// <param name="smtpDetails">SMTP details</param>
 /// <param name="emailToAddress">To Email Address</param>
 /// <param name="subject">Email Subject</param>
 /// <param name="body">Email body</param>
 /// <returns></returns>
 public string sendEmail(SMTPDetails smtpDetails, string emailToAddress, string subject, string body)
 {
     return(_commonRepository.SendEmail(smtpDetails, emailToAddress, subject, body));
 }
示例#10
0
        public ResponseModel SendMailforchangepassword(int userID, int IsStoreUser = 1)
        {
            CustomChangePassword customChangePassword = new CustomChangePassword();
            ResponseModel        objResponseModel     = new ResponseModel();

            try
            {
                string       token        = Convert.ToString(Request.Headers["X-Authorized-Token"]);
                Authenticate authenticate = new Authenticate();
                authenticate = SecurityService.GetAuthenticateDataFromToken(_radisCacheServerAddress, SecurityService.DecryptStringAES(token));
                string            _data        = "";
                string            ProgramCode  = authenticate.ProgramCode;
                RedisCacheService cacheService = new RedisCacheService(_radisCacheServerAddress);
                if (cacheService.Exists("Con" + ProgramCode))
                {
                    _data = cacheService.Get("Con" + ProgramCode);
                    _data = JsonConvert.DeserializeObject <string>(_data);
                }
                string X_Authorized_Domainname = Convert.ToString(Request.Headers["X-Authorized-Domainname"]);
                if (X_Authorized_Domainname != null)
                {
                    X_Authorized_Domainname = SecurityService.DecryptStringAES(X_Authorized_Domainname);
                }
                UserCaller userCaller = new UserCaller();

                customChangePassword = userCaller.SendMailforchangepassword(new UserServices(_data), userID, authenticate.TenantId, IsStoreUser);
                if (customChangePassword.UserID > 0 && customChangePassword.Password != null && customChangePassword.EmailID != null)
                {
                    MasterCaller   masterCaller     = new MasterCaller();
                    SMTPDetails    sMTPDetails      = masterCaller.GetSMTPDetails(new MasterServices(_data), authenticate.TenantId);
                    securityCaller _securityCaller  = new securityCaller();
                    CommonService  commonService    = new CommonService();
                    string         encryptedEmailId = SecurityService.Encrypt(customChangePassword.EmailID);

                    string decriptedPassword = SecurityService.DecryptStringAES(customChangePassword.Password);
                    string url      = configuration.GetValue <string>("websiteURL") + "/ChangePassword";
                    string body     = "Dear User, <br/>Please find the below details.  <br/><br/>" + "Your Email ID  : " + customChangePassword.EmailID + "<br/>" + "Your Password : "******"<br/><br/>" + "Click on Below link to change the Password <br/>" + url + "?Id:" + encryptedEmailId;
                    bool   isUpdate = _securityCaller.sendMailForChangePassword(new SecurityService(_connectioSting), sMTPDetails, customChangePassword.EmailID, body, authenticate.TenantId);
                    if (isUpdate)
                    {
                        objResponseModel.Status       = true;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.Success;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.Success);
                        objResponseModel.ResponseData = "Mail sent successfully";
                    }
                    else
                    {
                        objResponseModel.Status       = false;
                        objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.InternalServerError;
                        objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.InternalServerError);
                        objResponseModel.ResponseData = "Mail sent failure";
                    }
                }

                else
                {
                    objResponseModel.Status       = false;
                    objResponseModel.StatusCode   = (int)EnumMaster.StatusCode.RecordNotFound;
                    objResponseModel.Message      = CommonFunction.GetEnumDescription((EnumMaster.StatusCode)(int) EnumMaster.StatusCode.RecordNotFound);
                    objResponseModel.ResponseData = "Sorry User does not exist or active";
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(objResponseModel);
        }
示例#11
0
        public bool SendMail(ITicketing _ticket, SMTPDetails sMTPDetails, string mailTo, string cc, string bcc, string subject, string mailBody, bool informStore, string storeIDs, int TenantID)
        {
            _ticketList = _ticket;

            return(_ticketList.SendMail(sMTPDetails, mailTo, cc, bcc, subject, mailBody, informStore, storeIDs, TenantID));
        }