// creates and save a PreviousPassword object for the given user's password data private void recordCurrentPassword(MembershipUser user) { Tuple<MembershipPasswordFormat, string, string> currentPasswordData = ExtractPasswordData(user); using(DREAMContext db = new DREAMContext()) { PreviousPassword prevPwd = new PreviousPassword { UserID = (Guid)user.ProviderUserKey, PasswordFormat = currentPasswordData.Item1, PasswordSalt = currentPasswordData.Item2, Password = currentPasswordData.Item3 }; db.PreviousPasswords.Add(prevPwd); db.SaveChanges(); } }
//Return the passwordResetRequest object for the given user //Sends an email to the user with a link to the PasswordResetRequest's page public static PasswordResetRequest GenerateFor(MembershipUser user) { PasswordResetRequest resetReq = null; using (DREAMContext db = new DREAMContext()) { resetReq = new PasswordResetRequest(); { resetReq.ID = PasswordResetRequest.GenerateNewID(); resetReq.UserID = (Guid)user.ProviderUserKey; } db.SaveChanges(); String newPassword = user.ResetPassword(); SendEmail("*****@*****.**", user.Email, "", "", "DREAM Password Reset", newPassword); return resetReq; } }