public IActionResult Recovery() { var model = new RecoveryInputModel { IsValidEmail = true, IsValidCode = true }; return(View(model)); }
public IActionResult Recovery(RecoveryInputModel model, string button) { model.IsValidEmail = _simepadf.Usuario.Any(u => u.Email == model.Email); if (model.IsValidEmail && button == "send") { var recoveryCode = GenerateRandomRecoveryCode(10); SaveUserRecoveryCode(model.Email, recoveryCode); SendRecoveryEmail(model.Email, recoveryCode); model.ValidStart = DateTime.Now; model.ValidEnd = DateTime.Now.AddMinutes(30); return(View("RecoveryEmail", new RecoveryInputModel(model.Email))); } model.IsValidCode = _simepadf.Usuario.Any(u => u.Email == model.Email && u.RecoveryCode == model.Codigo); if (model.IsValidEmail && model.IsValidCode && button == "check") { return(RedirectToAction("PasswordReset", new { email = model.Email, code = model.Codigo })); } return(View(model)); }