public ActionResult Forgot() { ForgotPassViewData forgot = new ForgotPassViewData(); forgot.Succeed = false; return(View(forgot)); }
public ActionResult Forgot(string email) { ForgotPassViewData forgot = new ForgotPassViewData(); email = email.Trim(); if (!CovCakeMailer.IsValidEmail(email)) { ModelState.AddModelError("email", "L'adresse email est incorecte."); } IUserProfile userProfile = Data.UserDataAccess.GetUser(email); if (userProfile == null) { ModelState.AddModelError("email", "Aucun utilisateur avec cette adresse n'a été trouvé."); } if (ModelState.IsValid) { string infoMsgTitle = "Mot de passe réinitialisé"; string infoMsg = string.Format("Un email a été envoyé à {0} avec un nouveau mot de passe.", email); //si pas encore activé envoi de activation //TODO: ajouter le user dans la table UserProfile des linscription et pas ke dans le membership /* * if (!userProfile.GetMembershipUser().IsApproved && userProfile.ActivationKey.HasValue) * { * this.CovCakeMailer.SendSignupMail(userProfile, userProfile.Email, "** votre mot de passe ***"); * infoMsg = string.Format("L'email d'activation de compte viens d'être réenvoyé à {0}.", email); * } */ string newPass = CovCakeServices.GenerateAlphaNumPass(int.Parse(CovCakeConfiguration.DefaultPasswordLenght)); newPass = newPass.ToLower(); MembershipUser membershipUser = userProfile.GetMembershipUser(); membershipUser.ChangePassword(membershipUser.ResetPassword(), newPass); // IUserProfile userProfile = Data.UserDataAccess.GetUser(email); this.CovCakeMailer.SendForgotPasswordMail(userProfile, email, newPass); forgot.Email = email; forgot.Succeed = true; return(Info(infoMsgTitle, infoMsg)); //should redirect //return View(forgot); } else { // forgot.Succeed = false; return(View(forgot)); } }