public ActionResult RedefinirSenha(RedefinicaoSenhaViewModels viewModels) { if (ModelState.IsValid) { try { UsuarioAtivo usuarioAtivo = models.consultarUsuariosAtivosPorId(viewModels.IdUsuarioAtivo); usuarioAtivo.Senha = viewModels.Senha; var salt = Crypto.SHA1(usuarioAtivo.Senha); if (!models.editarUsuarioAtivo(usuarioAtivo, salt)) { ModelState.AddModelError("PasswordError", "Algo está errado em sua senha :/ Sua senha deve possuir no mínimo 7 caracteres, sendo obrigatório conter pelo menos um dígito, um caractere especial e uma letra maiúscula"); } else { TempData["Sucesso"] = "Sua senha foi redefinida. Entre com seu usuário e sua nova senha ^^"; return RedirectToAction("Index"); } } catch (Exception e) { TempData["Erro"] = "Parece que houve um erro ao redefinir sua senha :/"; } } else { ModelState.AddModelError("FieldsError", "Alguns campos não estão preenchidos corretamente :/"); } return View(); }
public ActionResult RedefinirSenha() { Uri uri = new Uri(Request.Url.ToString()); var salt = uri.Segments[3]; var usuarioAtivo = models.consultarUsuarioAtivoPorSalt(salt); if (usuarioAtivo != null) { var viewModels = new RedefinicaoSenhaViewModels(); viewModels.IdUsuarioAtivo = usuarioAtivo.Id; return View(viewModels); // return RedirectToAction("Editar", "UsuarioAtivo", new { id = usuarioAtivo.Id }); } else { TempData["Erro"] = "Parece que o seu link para recuperãção de senha expirou :/ Clique em Esqueceu sua senha? e informe seu e-mail para que possamos enviar para seu e-mail um novo link"; } return RedirectToAction("Login", "Home"); }