public Task Enviar(MensagemEmail mensagem) { var email = new MailMessage(); email.From = new MailAddress(_remetente); email.Body = mensagem.CorpoMensagem; email.Subject = mensagem.Assunto; email.IsBodyHtml = true; if (mensagem.Anexo != null) { email.Attachments.Add(new Attachment(mensagem.Anexo.Endereco)); } if (mensagem.Destinatarios != null) { foreach (var destinatario in mensagem.Destinatarios) { email.To.Add(destinatario); } } if (mensagem.Copias != null) { foreach (var copia in mensagem.Copias) { email.CC.Add(copia); } } _smtpClient.Send(email); return(Task.FromResult(0)); }
public ActionResult RecuperarSenha(string email) { if (email == "") { ViewBag.Erro = "Digite seu e-mail"; return(View()); } Usuario usuario = obterUsuarioPorEmail(email); if (usuario == null) { ViewBag.Erro = "O e-mail digitado não é válido"; return(View()); } MensagemEmail mensagem = new MensagemEmail(); mensagem.Mensagem = String.Format("Olá!\n Você solicitou a recuperação de senha. Sua senha é: {0}", usuario.senha); mensagem.Assunto = "Recuperação da Senha do Projeto Loja"; mensagem.Remetente = "*****@*****.**"; mensagem.Destinatario = email; try { SMTPHelper.EnviarEmail(mensagem); } catch (Exception ex) { ViewBag.Erro = ex.Message; } return(RedirectToAction("Login")); }
public async Task EnviarEmailCandidaturaReprovada(Candidatura candidatura) { var mensagemEmail = new MensagemEmail() .ComDestinatario(candidatura.Voluntario.Email) .ComAssunto("Voluntarie-se: Sua candidatura foi reprovada") .ComCorpoMensagem(TemplateEmailCandidaturaReprovada(candidatura)); await _sender.Enviar(mensagemEmail); }
public async Task EnviarEmailCandidatura(Candidatura candidatura) { var mensagemEmail = new MensagemEmail() .ComDestinatario(candidatura.Instituicao.Email) .ComAssunto($"Voluntarie-se: #{candidatura.IdOportunidade} Temos um voluntário para você!") .ComCorpoMensagem(TemplateEmailCandidatura(candidatura)); await _sender.Enviar(mensagemEmail); }
public async Task EnviarEmailContato(string nome, string email, string telefone, string mensagem) { var mensagemEmail = new MensagemEmail() .ComDestinatario(_emailContato) .ComAssunto("Contato - E-commerce") .ComCorpoMensagem(TemplateEmailContato(nome, email, telefone, mensagem)); await _sender.Enviar(mensagemEmail); }
public async Task EnviarEmailAtualizacaoSenha(Usuario usuario) { var email = new MensagemEmail() .ComDestinatario(usuario.Email) .ComAssunto("Atualizacão de senha") .ComCorpoMensagem(TemplateEmailAtualizacaoSenha(usuario)); await _sender.Enviar(email); }
public async Task EnviarEmailSolicitacaoRecuperacaoSenha(TokenRecuperacaoSenha tokenRecuperacaoSenha) { var email = new MensagemEmail() .ComDestinatario(tokenRecuperacaoSenha.Usuario.Email) .ComAssunto("Recuperação de senha") .ComCorpoMensagem(TemplateEmailSolicitacaoRecuperacaoSenha(tokenRecuperacaoSenha)); await _sender.Enviar(email); }
//Persistir o objecto e salvar na base de dados private bool inserir(MensagemEmail OMensagemEmail) { OMensagemEmail.setDefaultInsertValues(); db.MensagemEmail.Add(OMensagemEmail); db.SaveChanges(); return(OMensagemEmail.id > 0); }
public ActionResult Mensagem(MensagemEmail obj) { if (ModelState.IsValid) { MensagemEmailBO service = new MensagemEmailBO(); service.EnviarMsg(obj); } return(View("Index")); }
public ActionResult Mensagem(MensagemEmail obj) //ainda em construção { if (ModelState.IsValid) { MensagemEmailBO service = new MensagemEmailBO(); service.EnviarMsg(obj); } return(RedirectToAction("Curriculo")); }
/// <summary> /// Retornar lista de e-mails que devem receber cópia da mensagem /// </summary> public static bool temConfiguracao(this MensagemEmail OMensagemEmail) { if (OMensagemEmail == null) { return(false); } if (OMensagemEmail.titulo.isEmpty() || OMensagemEmail.corpoEmail.isEmpty()) { return(false); } return(true); }
/// <summary> /// Retornar lista de e-mails que devem receber cópia da mensagem /// </summary> public static List <string> listaCopias(this MensagemEmail OMensagemEmail) { var listaEmails = new List <string>(); if (OMensagemEmail == null || OMensagemEmail.emailsCopia.isEmpty()) { return(listaEmails); } listaEmails = OMensagemEmail.emailsCopia.Split(';') .Where(UtilValidation.isEmail) .ToList(); return(listaEmails); }
/// <summary> /// Persistir e salvar os dados /// </summary> public bool salvar(MensagemEmail OMensagemEmail) { OMensagemEmail.emailsCopia = OMensagemEmail.emailsCopia.abreviar(255); OMensagemEmail.titulo = OMensagemEmail.titulo.abreviar(255); OMensagemEmail.corpoEmail = OMensagemEmail.corpoEmail.abreviar(8000); int idOrganizao = User.idOrganizacao(); if (this.existe(OMensagemEmail.codigoIdentificacao, idOrganizao)) { this.OMensagemEmailExclusaoBL.excluir(OMensagemEmail.id); } return(this.inserir(OMensagemEmail)); }
public void EnviarMsg(MensagemEmail obj) { try { MailMessage msg = new MailMessage(); SmtpClient smtp = new SmtpClient(); MailAddress from = new MailAddress(obj.Email.ToString()); StringBuilder sb = new StringBuilder(); msg.To.Add("*****@*****.**"); msg.From = from; msg.Subject = "Teste de Envio"; msg.IsBodyHtml = false; smtp.Host = "smtp.gmail.com"; smtp.Port = 465; smtp.EnableSsl = true; smtp.DeliveryMethod = SmtpDeliveryMethod.Network; smtp.Credentials = new NetworkCredential("*****@*****.**", "gabrielgts250nv"); sb.Append("Nome: " + obj.Nome); sb.Append(Environment.NewLine); sb.Append("Fone: " + obj.Fone); sb.Append(Environment.NewLine); sb.Append("Email: " + obj.Email); sb.Append(Environment.NewLine); sb.Append("Mensagem: " + obj.Msg); msg.Body = sb.ToString(); var tEmail = new Thread(() => smtp.Send(msg)); tEmail.Start(); msg.Dispose(); } catch { throw; } }
public async Task <IActionResult> OnPostAsync() { try { if (ModelState.IsValid) { var user = await _userManager.FindByEmailAsync(Input.Email); if (user == null || !(await _userManager.IsEmailConfirmedAsync(user))) { _logger.LogWarning("Nenhum usuário encontrado!"); // Don't reveal that the user does not exist or is not confirmed return(RedirectToPage("./ForgotPasswordConfirmation")); } _logger.LogInformation("Criando corpo de e-mail"); var pathToFile = _env.WebRootPath + Path.DirectorySeparatorChar.ToString() + "templates" + Path.DirectorySeparatorChar.ToString() + "PasswordRecoveryEmail.html"; var builder = new BodyBuilder(); using (StreamReader sourceReader = System.IO.File.OpenText(pathToFile)) { builder.HtmlBody = sourceReader.ReadToEnd(); } // For more information on how to enable account confirmation and password reset please // visit https://go.microsoft.com/fwlink/?LinkID=532713 var code = await _userManager.GeneratePasswordResetTokenAsync(user); var callbackUrl = Url.Page( "/Account/ResetPassword", pageHandler: null, values: new { code }, protocol: Request.Scheme); string messageBody = string.Format(builder.HtmlBody, callbackUrl); _logger.LogInformation("Criando Email"); var mail = new MensagemEmail() { Assunto = "Email de Recuperação de senha", Conteudo = messageBody }; mail.DeEndereco.Add(new EnderecoEmail() { Nome = "FalzoGamer", Endereco = "*****@*****.**" }); mail.ParaEndereco.Add(new EnderecoEmail() { Nome = user.FirstName + " " + user.LastName, Endereco = Input.Email }); _logger.LogInformation("Enviando Email"); await _emailServico.SendAsync(mail); return(RedirectToPage("./ForgotPasswordConfirmation")); } return(Page()); } catch (Exception ex) { _logger.LogError("Ocorreu o seguinte erro: " + ex.Message); return(Page()); } }
public async Task <IActionResult> OnPostAsync(string returnUrl = null) { returnUrl = returnUrl ?? Url.Content("~/"); if (ModelState.IsValid) { var user = new ApplicationUser { UserName = Input.Email, Email = Input.Email }; var result = await _userManager.CreateAsync(user, Input.Password); if (result.Succeeded) { _logger.LogInformation("Usuário criado com sucesso!"); _logger.LogInformation("Criando corpo de e-mail"); var pathToFile = _env.WebRootPath + Path.DirectorySeparatorChar.ToString() + "templates" + Path.DirectorySeparatorChar.ToString() + "EmailConfirmation.html"; var builder = new BodyBuilder(); using (StreamReader sourceReader = System.IO.File.OpenText(pathToFile)) { builder.HtmlBody = sourceReader.ReadToEnd(); } var codigo = await _userManager.GenerateEmailConfirmationTokenAsync(user); var callbackUrl = Url.Page( "/Account/ConfirmEmail", pageHandler: null, values: new { userId = user.Id, code = codigo }, protocol: Request.Scheme); string messageBody = string.Format(builder.HtmlBody, callbackUrl); _logger.LogInformation("Criando Email"); var mail = new MensagemEmail() { Assunto = "Confirmação de Email", Conteudo = messageBody }; mail.DeEndereco.Add(new EnderecoEmail() { Nome = "FalzoGamer", Endereco = "*****@*****.**" }); mail.ParaEndereco.Add(new EnderecoEmail() { Nome = user.FirstName + " " + user.LastName, Endereco = Input.Email }); _logger.LogInformation("Enviando Email"); await _emailServico.SendAsync(mail); await _signInManager.SignInAsync(user, isPersistent : false); return(LocalRedirect(returnUrl)); } foreach (var error in result.Errors) { ModelState.AddModelError(string.Empty, error.Description); } } // If we got this far, something failed, redisplay form return(Page()); }