Ejemplo n.º 1
0
        public ActionResult AlterarSenha(string codigo, CandidatoAlterarSenhaViewModel model)
        {
            string    token     = Uri.UnescapeDataString(codigo);
            Candidato candidado = Candidato.LerTokenParaAlterarSenha(Criptografia.Base64Decode(token));

            if (candidado != null)
            {
                if (!StringExt.IsNullOrWhiteSpace(model.Cpf, model.Email, model.Senha, model.Confirmacao) &&
                    Valida.CPF(model.Cpf) &&
                    Valida.Email(model.Email) &&
                    model.Senha == model.Confirmacao)
                {
                    using (var contexto = new Contexto())
                    {
                        string    cpf = Formate.DeCPF(model.Cpf);
                        Candidato c   = contexto.Candidato.FirstOrDefault(cand => cand.Cpf == cpf);

                        if (c != null && c.Email.ToLower() == model.Email.ToLower())
                        {
                            if (c.Cpf == candidado.Cpf && c.Email.ToLower() == candidado.Email.ToLower())
                            {
                                c.Senha        = Criptografia.RetornarHash(model.Senha);
                                c.AlterarSenha = null;
                                model.Mensagem = "Senha alterada com sucesso.";
                                model.Ok       = true;
                                contexto.SaveChanges();
                                return(View(model));
                            }
                        }
                        else
                        {
                            model.Mensagem = "Não foi encontrado nenhum candidato para os dados informados.";
                        }
                    }
                }
                else
                {
                    model.Mensagem = "Todos os campos devem serem preenchidos com valores válidos.";
                }

                return(View(model));
            }
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 2
0
 public static Usuario Autenticar(string matricula, string senha)
 {
     if (!Sistema.UsuarioAtivo.Keys.Contains(matricula))
     {
         Usuario usuario = ListarPorMatricula(matricula);
         if (usuario != null && Criptografia.ChecarSenha(senha, usuario.Senha))
         {
             return(usuario);
         }
     }
     else if (HttpContextManager.Current.Request.Cookies.AllKeys.Contains("SIAC_Login"))
     {
         if (Criptografia.Base64Decode(HttpContextManager.Current.Request.Cookies["SIAC_Login"].Value).ToLower() == matricula.ToLower())
         {
             Usuario usuario = ListarPorMatricula(matricula);
             if (usuario != null && Criptografia.ChecarSenha(senha, usuario.Senha))
             {
                 return(usuario);
             }
         }
     }
     return(null);
 }