public ActionResult RecoverPassword(LoginModel model) { try { var user = _userService.RecoverPassword(model.Email); if (user != null) { var modelEmail = new EmailMail { From = ConfigurationManager.AppSettings["EmailFrom"], To = new List <string> { model.Email }, Subject = "Password", Body = "test" }; _emailMailService.SendEmail(modelEmail); ShowMessageDialog("Email successfully sent", Message.MessageKind.Success); } else { ShowMessageDialog("Email not found in database", Message.MessageKind.Warning); } } catch (Exception exception) { ShowMessageDialog("Something wrong happened when you tried to send email for password recover", exception); } return(RedirectToAction("Index")); }
public ActionResult Create(UserModel model) { try { if (ModelState.IsValid) { try { if (_userService.Get(w => w.Email.Equals(model.Email)) != null) { ShowMessageDialog(MensagensResource.EmailExistente, Message.MessageKind.Warning); model.ProfileDictionary = _ProfileService.GetDictionary(); model.HierarchyDictionary = _hierarchyService.GetDictionary(); return(View(model)); } model.Senha = _userService.GetCodigoRecover(); model.CodigoRecover = _userService.GetCodigoRecover(); var entity = Mapper.Map <UserModel, User>(model); _userService.Add(entity, CurrentUser.UserId); var email = new EmailMail { From = ConfigurationManager.AppSettings["EmailFrom"], To = new List <string> { model.Email }, Subject = "New User", Body = "You are a new user of the system..." }; _emailMailService.SendEmail(email); } catch (Exception e) { ShowMessageDialog(MensagensResource.SucessoCadastrarErroEmail, e); return(RedirectToAction("Index")); } ShowMessageDialog(MensagensResource.SucessoCadastrarSucessoEmail, Message.MessageKind.Success); } else { model.ProfileDictionary = _ProfileService.GetDictionary(); model.HierarchyDictionary = _hierarchyService.GetDictionary(); return(View(model)); } } catch (Exception e) { ShowMessageDialog(MensagensResource.ErroCadastrar, e); } return(RedirectToAction("Index")); }
public void SendEmail(EmailMail entity) { var mail = new MailMessage(); var smtp = new SmtpClient(_smtpServer, _smtpPort) { Credentials = new NetworkCredential(_user, _password) }; if (entity.ItemAttach != null && entity.ItemAttach.Any()) { Stream fileAtt = new MemoryStream(entity.ItemAttach, true); var att = new Attachment(fileAtt, entity.AttachmentName) { TransferEncoding = TransferEncoding.Base64 }; mail.Attachments.Add(att); } if (entity.UrlItemAttach != null) { foreach (var attachmentFilename in entity.UrlItemAttach) { Attachment attachment = new Attachment(attachmentFilename, MediaTypeNames.Application.Octet); ContentDisposition disposition = attachment.ContentDisposition; disposition.CreationDate = File.GetCreationTime(attachmentFilename); disposition.ModificationDate = File.GetLastWriteTime(attachmentFilename); disposition.ReadDate = File.GetLastAccessTime(attachmentFilename); disposition.FileName = Path.GetFileName(attachmentFilename); disposition.Size = new FileInfo(attachmentFilename).Length; disposition.DispositionType = DispositionTypeNames.Attachment; mail.Attachments.Add(attachment); } } mail.From = new MailAddress(_from); foreach (var emailTo in entity.To) { mail.To.Add(emailTo); } if (entity.IsBcc(entity)) { foreach (var emailCc in entity.Cc) { mail.CC.Add(emailCc); } } if (entity.IsCc(entity)) { foreach (var emailCc in entity.Cc) { mail.CC.Add(emailCc); } } mail.Priority = MailPriority.Normal; mail.IsBodyHtml = !entity.IsHtml.HasValue || entity.IsHtml.Value; mail.Subject = entity.Subject; mail.Body = entity.Body; //if (!string.IsNullOrEmpty(entity.SignatureImage)) //{ // var linkedResource = new LinkedResource(entity.SignatureImage) { ContentId = "Imagem" }; // var alternateView = AlternateView.CreateAlternateViewFromString(entity.Body, null, MediaTypeNames.Text.Html); // alternateView.LinkedResources.Add(linkedResource); // mail.AlternateViews.Add(alternateView); //} mail.SubjectEncoding = Encoding.UTF8; mail.BodyEncoding = Encoding.UTF8; smtp.Send(mail); }