Exemplo n.º 1
0
        /// <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();
            }
        }
Exemplo n.º 2
0
        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));
        }
Exemplo n.º 3
0
        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));
        }
Exemplo n.º 4
0
        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());
        }