public ActionResult ForgotPassword(string emailValue, int Type) { try { using (var ctx = new LicenseApplicationContext()) { string link = string.Empty; var user = ctx.Users.Where(a => a.Email == emailValue).FirstOrDefault(); if (user != null && user.UsersID > 0) { string resetPasswordParameter = string.Format("{0}#{1}#{2}", SystemEnum.RoleType.User.GetHashCode(), user.UsersID, DateTime.Now.AddMinutes(ProjectConfiguration.ResetPasswordExpireTime).ToString(ProjectConfiguration.EmailDateTimeFormat)); string encryptResetPasswordParameter = EncryptionDecryption.GetEncrypt(resetPasswordParameter); string encryptResetPasswordUrl = string.Format("{0}?q={1}", ProjectConfiguration.SiteUrlBase + TradingLicense.Web.Pages.Controllers.Account + "/" + Actions.ResetPassword, encryptResetPasswordParameter); if (UserMail.SendForgotPassword(user.Email, user.Username, encryptResetPasswordUrl)) { return(Json(new object[] { Convert.ToInt32(MessageType.success), MessageType.success.ToString(), Messages.Mailsend }, JsonRequestBehavior.AllowGet)); } else { return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.ContactToAdmin }, JsonRequestBehavior.AllowGet)); } } else { return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.InvalidEmail }, JsonRequestBehavior.AllowGet)); } } } catch (Exception ex) { // ErrorLogHelper.Log(ex); return(Json(new object[] { Convert.ToInt32(MessageType.danger), MessageType.danger.ToString(), Messages.ContactToAdmin }, JsonRequestBehavior.AllowGet)); } }
public ActionResult ForgotPassword(Login model) { User userModel = this.userDataBL.GetUsersList(new User()).Where(m => m.Email == model.Email).FirstOrDefault(); if (userModel != null) { string resetPasswordParameter = string.Format("{0}#{1}", userModel.Id, DateTime.Now.AddMinutes(ProjectConfiguration.ResetPasswordExpireTime).ToString(ProjectConfiguration.EmailDateTimeFormat)); string encryptResetPasswordParameter = EncryptionDecryption.EncryptByTripleDES(resetPasswordParameter); string encryptResetPasswordUrl = string.Format("{0}?q={1}", ProjectConfiguration.SiteUrlBase + Controllers.Account + "/" + Actions.ResetPassword, encryptResetPasswordParameter); EmailViewModel emailModel = new EmailViewModel() { Email = userModel.Email, Name = userModel.FirstName + " " + userModel.LastName, ResetUrl = encryptResetPasswordUrl, LanguageId = ConvertTo.ToInteger(ProjectSession.AdminPortalLanguageId) }; if (UserMail.SendForgotPassword(emailModel)) { this.AddToastMessage(Resources.General.Success, Messages.EmailSent, SystemEnumList.MessageBoxType.Success); return(this.RedirectToAction(Actions.Index, Controllers.Account)); } else { this.AddToastMessage(Resources.General.Error, Messages.PasswordEmailSendFail, SystemEnumList.MessageBoxType.Error); return(this.View(Views.ForgotPassword, model)); } } else { this.AddToastMessage(Resources.General.Error, Messages.UserAccountNotmatched, SystemEnumList.MessageBoxType.Error); return(this.View(Views.ForgotPassword, model)); } }