public void DefinirSenha(NovaSenhaViewModel novaSenhaViewModel) { Usuario oUsuario = Consulta.FirstOrDefault(p => string.IsNullOrEmpty(p.UsuarioExclusao) && p.UniqueKey.Equals(novaSenhaViewModel.UKUsuario)); if (oUsuario == null) { throw new Exception("Não foi possível localizar o usuário através da identificação."); } else { oUsuario.UsuarioExclusao = oUsuario.Login; Terminar(oUsuario); Usuario oUser = new Usuario() { CPF = oUsuario.CPF, Email = oUsuario.Email, Login = oUsuario.Login, Nome = oUsuario.Nome, Senha = CreateHashFromPassword(novaSenhaViewModel.ConfirmarNovaSenha), TipoDeAcesso = oUsuario.TipoDeAcesso, UKDepartamento = oUsuario.UKDepartamento, UKEmpresa = oUsuario.UKEmpresa, UniqueKey = oUsuario.UniqueKey }; base.Inserir(oUser); EnviarEmailParaUsuarioSenhaAlterada(oUsuario); } }
public IActionResult RetornoEsqueceuSenha(string usuarioId, string token) { var modelo = new NovaSenhaViewModel() { UsuarioId = usuarioId, Token = token }; return(View(modelo)); }
public ActionResult DefinirSenha(NovaSenhaViewModel novaSenhaViewModel) { if (ModelState.IsValid) { if (novaSenhaViewModel.NovaSenha.Equals(novaSenhaViewModel.ConfirmarNovaSenha)) { try { if (string.IsNullOrEmpty(novaSenhaViewModel.IDUsuario)) { return(Json(new { resultado = new RetornoJSON() { Erro = "Não foi possível localizar o ID do usuário através de sua requisição. Solicite um novo acesso." } })); } UsuarioBusiness.DefinirSenha(novaSenhaViewModel); TempData["MensagemSucesso"] = "Senha alterada com sucesso."; return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Login", "Conta") } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = new RetornoJSON() { Erro = "As duas senhas devem ser identicas." } })); } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }
public ActionResult RedefinirSenha(int id) { var usuario = UsuarioModel.RecuperarPeloId(id); if (usuario == null) { id = -1; } var model = new NovaSenhaViewModel() { Usuario = id }; ViewBag.Mensagem = null; return View(model); }
public ActionResult DefinirNovaSenha(string id) { try { if (string.IsNullOrEmpty(id)) { Extensions.GravaCookie("MensagemSucesso", "Não foi possível recuperar a identificação do usuário.", 10); //TempData["MensagemErro"] = "Não foi possível recuperar a identificação do usuário."; } else { id = GISHelpers.Utils.Criptografador.Descriptografar(WebUtility.UrlDecode(id.Replace("_@", "%")), 1); string numDiasExpiracao = ConfigurationManager.AppSettings["Web:ExpirarLinkAcesso"]; if (string.IsNullOrEmpty(numDiasExpiracao)) { numDiasExpiracao = "1"; } if (DateTime.Now.Subtract(DateTime.ParseExact(id.Substring(id.IndexOf("#") + 1), "yyyyMMdd", System.Globalization.CultureInfo.InvariantCulture)).Days > int.Parse(numDiasExpiracao)) { Extensions.GravaCookie("MensagemSucesso", "Este link já expirou, solicite um outro link na opção abaixo.", 10); //TempData["MensagemErro"] = "Este link já expirou, solicite um outro link na opção abaixo."; } else { NovaSenhaViewModel oNovaSenhaViewModel = new NovaSenhaViewModel(); //oNovaSenhaViewModel.UKUsuario = id.Substring(0, id.IndexOf("#")); return(View(oNovaSenhaViewModel)); } } } catch (Exception ex) { if (ex.GetBaseException() == null) { TempData["MensagemErro"] = ex.Message; } else { TempData["MensagemErro"] = ex.GetBaseException().Message; } } return(View()); }
public void DefinirSenha(NovaSenhaViewModel novaSenhaViewModel) { Usuario oUsuario = Consulta.FirstOrDefault(p => string.IsNullOrEmpty(p.UsuarioExclusao) && p.IDUsuario.Equals(novaSenhaViewModel.IDUsuario)); if (oUsuario == null) { throw new Exception("Não foi possível localizar o usuário através da identificação. Solicite um novo acesso."); } else { oUsuario.Senha = CreateHashFromPassword(novaSenhaViewModel.NovaSenha); Alterar(oUsuario); EnviarEmailParaUsuarioSenhaAlterada(oUsuario); } }
public ActionResult RedefinirSenha(NovaSenhaViewModel model) { ViewBag.Mensagem = null; if (!ModelState.IsValid) { return View(model); } var usuario = UsuarioModel.RecuperarPeloId(model.Usuario); if (usuario != null) { var ok = usuario.AlterarSenha(model.Senha); ViewBag.Mensagem = ok ? "Senha alterada com sucesso!" : "Não foi possível alterar a senha!"; } return View(); }
public ActionResult SolicitarAcesso(NovaSenhaViewModel novaSenhaViewModel) { if (!string.IsNullOrEmpty(novaSenhaViewModel.Email)) { try { UsuarioBusiness.SolicitarAcesso(novaSenhaViewModel.Email); Extensions.GravaCookie("MensagemSucesso", "Solicitação de acesso realizada com sucesso.", 10); //TempData["MensagemSucesso"] = "Solicitação de acesso realizada com sucesso."; return(Json(new { resultado = new RetornoJSON() { URL = Url.Action("Login", "Account") } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = new RetornoJSON() { Erro = "Informe o e-mail cadastrado em sua conta." } })); } }
public ActionResult RedefinirSenha(int id) { usuarioRepositorio = new UsuarioRepositorio(); var usuario = usuarioRepositorio.RecuperarPeloId(id); if (usuario == null) { id = -1; } var model = new NovaSenhaViewModel() { Usuario = id }; ViewBag.Mensagem = null; return(View(model)); }
public async Task <IActionResult> RetornoEsqueceuSenha(NovaSenhaViewModel modelo) { if (ModelState.IsValid & modelo != null) { var usuario = await _userManager.FindByIdAsync(modelo.UsuarioId).ConfigureAwait(false); if (usuario != null) { var resultadoAlteracao = await _userManager.ResetPasswordAsync(usuario, modelo.Token, modelo.NovaSenha).ConfigureAwait(false); if (resultadoAlteracao.Succeeded) { ViewData["Alerta"] = 1; ViewData["Mensagem"] = _localizador["Senha Alterada Com Sucesso"]; return(View()); } } } ModelState.AddModelError("", _localizador["Não conseguimos alterar sua senha!"]); ViewData["ApresentarRegrasSenha"] = 1; ViewData["erroLoginOuCadastro"] = 1; return(View(modelo)); }
public ActionResult DefinirSenha(NovaSenhaViewModel entidade) { if (ModelState.IsValid) { if (entidade.NovaSenha.Equals(entidade.ConfirmarNovaSenha)) { try { Usuario user = UsuarioBusiness.Consulta.FirstOrDefault(a => string.IsNullOrEmpty(a.UsuarioExclusao) && a.Login.Equals(AutorizacaoProvider.UsuarioAutenticado.Login)); if (user == null) { return(Json(new { resultado = new RetornoJSON() { Erro = "Não foi possível localizar o usuário logado na base de dados. Favor acionar o administrador." } })); } if (!user.Senha.Equals(UsuarioBusiness.CreateHashFromPassword(entidade.SenhaAtual))) { return(Json(new { resultado = new RetornoJSON() { Alerta = "A senha atual não confere com a senha da base de dados." } })); } entidade.IDUsuario = user.ID; UsuarioBusiness.DefinirSenha(entidade); return(Json(new { resultado = new RetornoJSON() { Sucesso = "Senha alterada com sucesso." } })); } catch (Exception ex) { if (ex.GetBaseException() == null) { return(Json(new { resultado = new RetornoJSON() { Erro = ex.Message } })); } else { return(Json(new { resultado = new RetornoJSON() { Erro = ex.GetBaseException().Message } })); } } } else { return(Json(new { resultado = new RetornoJSON() { Erro = "As duas senhas devem ser identicas." } })); } } else { return(Json(new { resultado = TratarRetornoValidacaoToJSON() })); } }