예제 #1
0
        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));
        }