protected void BtnEnviar_Click(object sender, EventArgs e) { MODUsuario usuario = new MODUsuario(); MODUsuario retorno = new MODUsuario(); MODRecuperaSenha recuperaSenha = new MODRecuperaSenha(); MODRecuperacaoSenha_Usuario recuperacaoSenha_Usuario = new MODRecuperacaoSenha_Usuario(); Criptografia cripto = new Criptografia(); EnviaEmail enviaEmail = new EnviaEmail(); try { usuario.Login = TxtLogin.Text.Trim(); retorno = BLLUsuario.PesquisarLogin(usuario); usuario.Email = retorno.Email; PegaLogin.AtribuiLogin(TxtLogin.Text.Trim()); string senha = GeradorSenhaAleatoria.GeraSenha(); recuperaSenha.CodigoRecuperacao = cripto.criptografia(senha); recuperaSenha.Ativo = 's'; BLLRecuperacaoSenha.Inserir(recuperaSenha); recuperacaoSenha_Usuario.FkRecuperacao = BLLRecuperacaoSenha.recuperaId(); recuperacaoSenha_Usuario.FkUsuario = usuario.Login; recuperacaoSenha_Usuario.DataAlteracao = System.DateTime.Now; BLLRecuperacaoSenha_Usuario.Inserir(recuperacaoSenha_Usuario); enviaEmail.EnvioEmailRecuperacao(usuario.Email, senha, usuario.Login); Response.Write("<script>alert('O código de acesso foi enviado ao seu email com sucesso!');</script>"); Response.Redirect("../Pages/InserirCodigoRecuperacao.aspx"); } catch (Exception) { Response.Write("<script>alert('Erro ao enviar!');</script>"); throw; } }
protected void BtnCadastrar_Click(object sender, EventArgs e) { MODUsuario usuario = new MODUsuario(); Criptografia cripto = new Criptografia(); EnviaEmail enviaEmail = new EnviaEmail(); List <MODUsuario> checaEmail = new List <MODUsuario>(); if (TxtEmail.Text.Trim() == "" || TxtEmail.Text.Length > 50) { LblResposta.Text = Erros.EmailVazio; } else if (TxtNome.Text.Trim() == "" || TxtNome.Text.Length > 50) { LblResposta.Text = Erros.NomeVazio; } else if (TxtProntuario.Text.Trim() == "" || TxtProntuario.Text.Length > 15) { LblResposta.Text = Erros.LoginVazio; } else { try { usuario.Login = TxtProntuario.Text.Trim(); usuario.Nome = TxtNome.Text.Trim(); usuario.Email = TxtEmail.Text.Trim(); usuario.Imagem = "Imagens/usuario.png"; usuario.DataCadastro = Convert.ToDateTime(DateTime.Now.ToShortDateString()); if (TxtTipoUsuario.SelectedValue == "Administrador") { usuario.FkTipo = 1; } else { usuario.FkTipo = 2; } string senha = GeradorSenhaAleatoria.GeraSenha(); usuario.Senha = cripto.criptografia(senha); usuario.FkStatus = 1; usuario.PrimeiroAcesso = 's'; checaEmail = BLLUsuario.Pesquisar(usuario, "email"); if (checaEmail.Count > 0) { LblResposta.Text = "Endereço de Email já cadastrado anteriormente"; } else { BLLUsuario.Inserir(usuario); enviaEmail.EnvioEmail(usuario.Email, usuario.Nome, senha, usuario.Login); LblResposta.Text = "Usuário cadastrado com sucesso!"; } } catch (Exception) { Response.Write("<script>alert('Erro ao inserir!');</script>"); throw; } } }
public ActionResult GeraSenha(CadastraSenha cadastraSenha) { if (ModelState.IsValid) { var response = Request["g-recaptcha-response"]; var secretKey = "6LfsAD4UAAAAAGW_7DCXe5bmCeqQ5a3Rq3iyR7Vv"; var client = new WebClient(); var recaptcha = client.DownloadString(string.Format("https://www.google.com/recaptcha/api/siteverify?secret={0}&response={1}", secretKey, response)); var objetoRecaptcha = JObject.Parse(recaptcha); var sucesso = (bool)objetoRecaptcha.SelectToken("success"); if (!sucesso) { ModelState.AddModelError("UsuarioInvalido", "Marque a opção \"Não sou um robô.\""); return(View("Index")); } var pessoa = pessoaDAO.BuscaPessoaAtivaPorCpfCnpj(cadastraSenha.Cpf) ?? pessoaDAO.BuscaPessoaComAcessosMultiplosPorCpfCnpj(cadastraSenha.Cpf); if (pessoa == null) { ModelState.AddModelError("UsuarioInvalido", "O CPF informado não possui conta ativa no sistema. Entre em contato com o Clube..."); return(View("Index")); } var contato = contatoDAO.BuscaContatoEmailPorPessoa(pessoa.Id); if (string.IsNullOrEmpty(contato.Contatos)) { ModelState.AddModelError("UsuarioInvalido", "O usuário não possui e-mail cadastrado. Favor, ligar para o Clube e cadastrar um e-mail válido."); return(View("Index")); } var novaSenha = GeradorSenhaAleatoria.GerarSenha(); var usuario = portalUsuarioDAO.BuscaUsuarioPorIdPessoa(pessoa.Id); if (usuario.IdPessoa <= 0) { var incluir = portalUsuarioDAO.IncluirUsuario(pessoa, novaSenha); if (!incluir) { ModelState.AddModelError("UsuarioInvalido", "Ocorreu um erro ao incluir o usuário. Tente novamente..."); return(View("Index")); } } else { var alterar = portalUsuarioDAO.AlterarSenha(usuario.IdPessoa, novaSenha); if (!alterar) { ModelState.AddModelError("UsuarioInvalido", "Ocorreu um erro ao alterar a senha. Tente novamente..."); return(View("Index")); } } var html = new StringBuilder(); html.Append("<!DOCTYPE html>"); html.Append("<html>"); html.Append("<head>"); html.Append(" <meta charset='utf-8' />"); html.Append("</head>"); html.Append("<body>"); html.Append(" <p>"); html.Append(" Nova Senha: " + novaSenha); html.Append(" </p>"); html.Append("</body>"); html.Append("</html>"); var mail = new MailMessage(); mail.From = new MailAddress("*****@*****.**", "Clube Conteza (Gerenciador)"); mail.To.Add(new MailAddress(contato.Contatos)); mail.Subject = "Nova Senha (Clube Conteza)"; mail.IsBodyHtml = true; mail.Body = html.ToString(); var smtp = new SmtpClient(); smtp.Host = "email-ssl.com.br"; smtp.Port = 587; smtp.EnableSsl = true; smtp.Credentials = new NetworkCredential("*****@*****.**", "2016@ral"); try { smtp.Send(mail); } catch (Exception) { ModelState.AddModelError("UsuarioInvalido", "Falha ao enviar o e-mail. Tente novamente..."); return(View("Index")); } finally { smtp.Dispose(); } return(RedirectToAction("Index", "Login")); } else { return(View("Index")); } }