/// <summary> /// Método para alterar senha /// </summary> /// <param name="modelo">dados de alteração</param> /// <returns>view de alteração</returns> //[AcceptVerbs(HttpVerbs.Post)] //[ValidateAntiForgeryToken] //public ActionResult MudarSenha(MudarSenhaViewModel modelo) //{ // try // { // this.InicializaView(); // this.mudarSenhaViewModel = modelo; // if (ModelState.IsValid) // { // SYS_USUARIOBusiness sYS_USUARIOBusiness = new SYS_USUARIOBusiness(); // if (sYS_USUARIOBusiness.AlterarSenha(this.LoginUsuario, modelo.SenhaAtual, modelo.NovaSenha)) // { // ViewBag.Message = "Senha alterada com sucesso."; // this.mudarSenhaViewModel.SenhaAtual = string.Empty; // this.mudarSenhaViewModel.NovaSenha = string.Empty; // } // else // { // ViewBag.Message = "Senha Atual inválida."; // } // } // return this.View("MudarSenha", this.mudarSenhaViewModel); // } // catch (Exception ex) // { // this.Session["ExceptionErro"] = ex; // return this.RedirectToAction("ErroException", "Erro"); // } //} /// <summary> /// Inicializa as view de login /// </summary> private void InicializaView() { if (this.loginViewModel == null) { this.loginViewModel = new LoginViewModel(); } if (this.mudarSenhaViewModel == null) { this.mudarSenhaViewModel = new MudarSenhaViewModel(); } }
public IActionResult InfoSeguranca(long id) { var cliente = _context.Users.SingleOrDefault(c => c.Id == id); if (cliente == null) { return(NotFound()); } MudarSenhaViewModel model = new MudarSenhaViewModel(); return(View(model)); }
public async Task <IActionResult> InfoSeguranca(long id, MudarSenhaViewModel model) { if (ModelState.IsValid) { try { var cliente = _context.Users.SingleOrDefault(c => c.Id == id); if (model.OldPassword == null) { ModelState.AddModelError("OldPassword", "Esta campo é obrigatório!"); return(View(model)); } if (cliente.PasswordHash != null) { IdentityResult changePasswordResult = await _userManager.ChangePasswordAsync(cliente, model.OldPassword, model.NewPassword); if (!changePasswordResult.Succeeded) { return(View(model)); } } else { var setPasswordResult = await _userManager.AddPasswordAsync(cliente, model.NewPassword); if (!setPasswordResult.Succeeded) { return(View(model)); } } await _signInManager.SignInAsync(cliente, isPersistent : false); return(View(model)); } catch (Exception e) { return(View(model)); } } return(View(model)); }
public async Task <ActionResult> MudarSenha(MudarSenhaViewModel mudarSenha) { if (!ModelState.IsValid) { return(CustomResponse(ModelState)); } var user = await _userManager.FindByIdAsync(AppUser.ObterUserId().ToString()); var result = await _userManager.ChangePasswordAsync(user, mudarSenha.SenhaAtual, mudarSenha.NovaSenha); if (result.Succeeded) { await _emailService.SendEmailAsync(user.Email, "Sua senha foi alterada", "proteja sua conta"); return(CustomResponse()); } foreach (var error in result.Errors) { NotificarErro(error.Description); } return(CustomResponse()); }