public ActionResult EsqueceuSenha(CandidatoEsqueceuSenhaViewModel model) { if (!StringExt.IsNullOrWhiteSpace(model.Cpf, model.Email) && Valida.CPF(model.Cpf) && Valida.Email(model.Email)) { Candidato c = Candidato.ListarPorCPF(Formate.DeCPF(model.Cpf)); if (c != null && c.Email.ToLower() == model.Email.ToLower()) { string token = Candidato.GerarTokenParaAlterarSenha(c); string url = Url.Action("AlterarSenha", "Candidato", new { codigo = token }, Request.Url.Scheme); EnviarEmail.SolicitarSenha(c.Email, c.Nome, url); TempData["EsqueceuSenhaMensagem"] = $"Um email com instruções foi enviado para {c.Email}."; return(RedirectToAction("EsqueceuSenha")); } 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)); }
public ActionResult Cadastrar(CandidatoCadastrarViewModel model) { if (!StringExt.IsNullOrWhiteSpace(model.Nome, model.Cpf, model.Email, model.Senha, model.SenhaConfirmacao)) { if (model.SenhaConfirmacao == model.Senha) { if (Valida.Email(model.Email)) { model.Cpf = Formate.DeCPF(model.Cpf); if (Candidato.ListarPorCPF(model.Cpf) == null) { if (model.Cpf.Length == 11 && Valida.CPF(model.Cpf)) { var c = new Candidato() { Nome = model.Nome, Cpf = model.Cpf, Email = model.Email, Senha = Criptografia.RetornarHash(model.Senha) }; Candidato.Inserir(c); Sessao.Inserir("SimuladoCandidato", c); EnviarEmail.Cadastro(c.Email, c.Nome); return(RedirectToAction("Perfil")); } else { model.Mensagem = "Informe um CPF válido."; } } else { model.Mensagem = "Este CPF já está cadastrado."; } } else { model.Mensagem = "Informe um email válido."; } } else { model.Mensagem = "Senha de Confirmação diferente da Senha informada."; } } else { model.Mensagem = "Todos os campos são obrigatórios."; } return(View(model)); }
public ActionResult Perfil(string codigo, CandidatoPerfilViewModel model) { if (codigo == Sessao.Candidato.Cpf) { Candidato c = Candidato.ListarPorCPF(Sessao.Candidato.Cpf); if (!string.IsNullOrWhiteSpace(model.Nome)) { c.Nome = model.Nome; } if (!string.IsNullOrWhiteSpace(model.Email)) { c.Email = model.Email; } if (model.RgDtExpedicao != null && !string.IsNullOrWhiteSpace(model.RgOrgao) && model.RgNumero > 0) { c.RgDtExpedicao = model.RgDtExpedicao; c.RgNumero = model.RgNumero; c.RgOrgao = model.RgOrgao; } if (model.DtNascimento.HasValue) { c.DtNascimento = model.DtNascimento.Value; } if (model.Sexo != null) { c.Sexo = model.Sexo; } if (!string.IsNullOrWhiteSpace(model.TelefoneCelular) || !string.IsNullOrWhiteSpace(model.TelefoneFixo)) { c.TelefoneCelular = model.TelefoneCelular; c.TelefoneFixo = model.TelefoneFixo; } if (model.Municipio > 0) { c.Municipio = Municipio.ListarPorCodigo(model.Pais, model.Estado, model.Municipio); } c.FlagAdventista = model.Adventista; c.FlagNecessidadeEspecial = model.NecessidadeEspecial; if (model.NecessidadeEspecial) { c.DescricaoNecessidadeEspecial = model.DescricaoNecessidadeEspecial; } else { c.DescricaoNecessidadeEspecial = null; } Repositorio.Commit(); } if (!String.IsNullOrWhiteSpace(Request.QueryString["inscricao"])) { return(RedirectToAction("Confirmar", "Inscricao", new { codigo = Request.QueryString["inscricao"] })); } return(RedirectToAction("Perfil", "Candidato", new { codigo = "" })); }