public JsonResult ResetPassword([Bind(Include = "Password,UserId,RequestId")] RegisterModel registerModel) { try { Mapper.CreateMap <RegisterModel, User>(); User userMaster = Mapper.Map <RegisterModel, User>(registerModel); User userFound = _userService.GetUser(registerModel.UserId.ToString()); if (userFound != null) { if (!userFound.IsActive) { return(Json(Infrastructure.CommonClass.CreateMessage("error", "Your email verification is pending."))); } //Update User userFound.Password = SecurityFunction.EncryptString(userMaster.Password); var userDetail = _userService.UpdateUser(userFound); //End : Update User //Start : Update Email Verification var emailVerification = _emailVerificationService.GetEmailVerification(registerModel.RequestId); //Here RequestId is EmailVerificationId if (emailVerification != null) { emailVerification.IsOperationDone = true; _emailVerificationService.UpdateEmailVerification(emailVerification); } //End : Update Email Verification //Start : Send Email EmailManager emailManager = new EmailManager(); EMailEntity emailEntity = new EMailEntity(); emailEntity.ToMail = userFound.EmailId; emailEntity.RequestId = registerModel.RequestId; //There is no use of RequestId. It is just for error handing in SendMailForConfirmResetPassword function. emailEntity.FirstName = userFound.FirstName; emailManager.SendMailForConfirmResetPassword(emailEntity); //End : Send Email return(Json(Infrastructure.CommonClass.CreateMessage("success", "Password is changed successfully."))); } else { return(Json(Infrastructure.CommonClass.CreateMessage("error", "User does not exists."))); } } catch (Exception ex) { string ErrorMsg = ex.Message.ToString(); ErrorLog errorlog = new ErrorLog(); errorlog.LogError(ex); return(Json(Infrastructure.CommonClass.CreateMessage("error", "Please try again."))); } }
public int SendMailOfWelcome(EMailEntity emailEntity) { MailMessage mail = new MailMessage(); MailAddress Sender = new MailAddress(ConfigurationManager.AppSettings["MailFrom"]); string WelcomePath = CommonClass.GetURL() + "/#/VerifyAccount?rel_id"; emailEntity.FromMail = _FromMail; mail.To.Add(emailEntity.ToMail); mail.From = Sender; mail.Subject = "Welcome to " + ConstantModel.ProjectSettings.ProjectDisplayName; string body = string.Empty; string SiteURL = CommonClass.GetURL(); string Logopath = SiteURL + "/Content/verification_email/aws-marketplace-logo.png"; string IconPath1 = SiteURL + "/Content/verification_email/img-1.jpg"; string IconPath2 = SiteURL + "/Content/verification_email/img-2.jpg"; string IconPath3 = SiteURL + "/Content/verification_email/img-3.jpg"; try { using (StreamReader reader = new StreamReader(HostingEnvironment.MapPath("~/Content/verification_email/WelcomeEmail.html"))) { body = reader.ReadToEnd(); } body = body.Replace("{UserName}", emailEntity.FirstName); body = body.Replace("{RequestId}", emailEntity.RequestId); body = body.Replace("{LogoPath}", Logopath); body = body.Replace("{IconPath1}", IconPath1); body = body.Replace("{IconPath2}", IconPath2); body = body.Replace("{IconPath3}", IconPath3); body = body.Replace("{Welcome}", WelcomePath); body = body.Replace("{SiteURL}", SiteURL); body = body.Replace("{Display_Name}", ConstantModel.ProjectSettings.ProjectDisplayName); body = body.Replace("{Tag_Line}", ConstantModel.ProjectSettings.TagLine); body = body.Replace("{Owner_Name}", ConstantModel.ProjectSettings.OwnerName); body = body.Replace("{Footer_Display_Name}", ConstantModel.ProjectSettings.FooterDisplayName); body = body.Replace("{Footer_Display_Address}", ConstantModel.ProjectSettings.FooterDisplayAddress); AlternateView avHtml = AlternateView.CreateAlternateViewFromString(body, null, "text/html"); mail.AlternateViews.Add(avHtml); mail.IsBodyHtml = true; SendMailWithAttachment.SendMail(emailEntity.FromMail, emailEntity.ToMail, "Welcome to " + ConstantModel.ProjectSettings.ProjectDisplayName, body.ToString()); return(1); } catch (Exception ex) { string ErrorMsg = ex.Message.ToString(); ErrorLogging errLog = new ErrorLogging(); errLog.LogError(ex); return(0); } }
public int SendMailForConfirmResetPassword(EMailEntity emailEntity) { MailMessage mail = new MailMessage(); MailAddress Sender = new MailAddress(ConfigurationManager.AppSettings["MailFrom"]); emailEntity.FromMail = _FromMail; mail.To.Add(emailEntity.ToMail); mail.From = Sender; mail.Subject = "Confirmation Of Password Change"; string body = string.Empty; string Logopath = CommonClass.GetURL() + "/Content/verification_email/aws-marketplace-logo.png"; string Contactus = CommonClass.GetURL() + "/#/contactus"; using (StreamReader reader = new StreamReader(HostingEnvironment.MapPath("~/Content/verification_email/ConfirmResetPassword.html"))) { body = reader.ReadToEnd(); } body = body.Replace("{UserName}", emailEntity.FirstName); body = body.Replace("{RequestId}", emailEntity.RequestId); body = body.Replace("{LogoPath}", Logopath); body = body.Replace("{ContactUs}", Contactus); body = body.Replace("{Display_Name}", ConstantModel.ProjectSettings.ProjectDisplayName); body = body.Replace("{Tag_Line}", ConstantModel.ProjectSettings.TagLine); body = body.Replace("{Owner_Name}", ConstantModel.ProjectSettings.OwnerName); body = body.Replace("{Footer_Display_Name}", ConstantModel.ProjectSettings.FooterDisplayName); body = body.Replace("{Footer_Display_Address}", ConstantModel.ProjectSettings.FooterDisplayAddress); AlternateView avHtml = AlternateView.CreateAlternateViewFromString(body, null, "text/html"); mail.AlternateViews.Add(avHtml); mail.IsBodyHtml = true; try { SendMailWithAttachment.SendMail(emailEntity.FromMail, emailEntity.ToMail, "Password Changed", body.ToString()); return(1); } catch (Exception ex) { string ErrorMsg = ex.Message.ToString(); ErrorLogging errLog = new ErrorLogging(); errLog.LogError(ex); return(0); } }
public void Execute(IJobExecutionContext context) { JobDataMap dataMap = context.JobDetail.JobDataMap; string userId = dataMap.GetString("UserId"); string emailType = dataMap.GetString("EmailType"); var user = _userService.GetUser(userId); if (user != null) { //Start : Insert Email Verification EmailVerification emailverification = new EmailVerification(); emailverification.UserId = user.UserId; emailverification.EmailType = emailType; emailverification.ActiveForMinute = ConstantModel.ProjectSettings.EmailExpireLimit; //Valid upto 24-Hours emailverification.IsActive = true; emailverification.IsOperationDone = false; var emailVerificationResult = _emailVerificationService.InsertEmailVerification(emailverification); //End : Insert Email Verification //Start : Sending welcome mail after registeration or Reverify account email EmailManager emailManager = new EmailManager(); EMailEntity emailEntity = new EMailEntity(); emailEntity.ToMail = user.EmailId; emailEntity.RequestId = emailVerificationResult.EmailVerificationId.ToString(); //Here RequestId is EmailVerificationId emailEntity.FirstName = user.FirstName; if (emailType == EnumValue.GetEnumDescription(EnumValue.EmailType.WelcomeEmail)) { emailManager.SendMailOfWelcome(emailEntity); } else if (emailType == EnumValue.GetEnumDescription(EnumValue.EmailType.ReverifyAccount)) { emailManager.SendMailForReverifyAccount(emailEntity); } //End : Sending welcome mail after registeration or Reverify account email } }
// GET: /Account/ForgotPasswordMail public JsonResult ForgotPasswordMail(RegisterModel registerModel) { int result = -1; try { var userInfo = base._userService.GetUserByName(registerModel.Email); if (userInfo != null) { EmailVerification emailverification = new EmailVerification(); emailverification.UserId = userInfo.UserId; emailverification.EmailType = EnumValue.GetEnumDescription(EnumValue.EmailType.ResetPassword); emailverification.ActiveForMinute = ConstantModel.ProjectSettings.EmailExpireLimit; //Valid upto 24-Hours emailverification.IsActive = true; emailverification.IsOperationDone = false; var emailVerificationResult = _emailVerificationService.InsertEmailVerification(emailverification); EmailManager emailManager = new EmailManager(); EMailEntity emailEntity = new EMailEntity(); emailEntity.ToMail = userInfo.EmailId; emailEntity.RequestId = emailVerificationResult.EmailVerificationId.ToString(); emailEntity.FirstName = userInfo.FirstName; result = emailManager.SendMailForResetPassword(emailEntity); return(Json(Infrastructure.CommonClass.CreateMessage("success", result), JsonRequestBehavior.AllowGet)); } return(Json(Infrastructure.CommonClass.CreateMessage("error", "This email id does not exist. Please try again."), JsonRequestBehavior.AllowGet)); } catch (Exception ex) { string ErrorMsg = ex.Message.ToString(); ErrorLog errorlog = new ErrorLog(); errorlog.LogError(ex); return(Json(Infrastructure.CommonClass.CreateMessage("error", "Something went wrong.Please try later."), JsonRequestBehavior.AllowGet)); } }