public ActionResult Enviar(MarketingViewModel model)
        {
            if (EmailMarketingValido(model))
            {
                EmailsMarketing emailMarketing = model.IDEmailMarketing > 0 ? EmailMarketingService.getEmailMarketing(model.IDEmailMarketing) : new EmailsMarketing();

                fillCTM(emailMarketing, model);
                EmailMarketingService.save(emailMarketing);
            }

            var mailObject = new MailMessage();
            var smtpServer = new SmtpClient(ConfigurationManager.AppSettings.Get("email.smtp"));
            var htmlBody   = "<html><body>{0}</body></html>";

            mailObject.From = new MailAddress(model.Remetente);

            model.Destinatario.Split(',').ForEach(email => mailObject.To.Add(new MailAddress(email)));

            mailObject.Subject    = model.Assunto;
            mailObject.Body       = String.Format(htmlBody, model.Corpo);
            mailObject.IsBodyHtml = true;

            smtpServer.Port        = Convert.ToInt32(ConfigurationManager.AppSettings.Get("email.port"));
            smtpServer.Credentials = new System.Net.NetworkCredential(ConfigurationManager.AppSettings.Get("email.user"), ConfigurationManager.AppSettings.Get("email.password"));
            smtpServer.EnableSsl   = true;

            smtpServer.Send(mailObject);

            addMensagemSucesso("E-mail marketing enviado com sucesso!");

            return(RedirectToAction("Index", "Marketing"));
        }
 private void fillCTM(EmailsMarketing emailMarketing, MarketingViewModel model)
 {
     emailMarketing.IDUsuario        = visitor.ID;
     emailMarketing.Assunto          = model.Assunto;
     emailMarketing.Corpo            = model.Corpo;
     emailMarketing.Destinatarios    = model.Destinatario;
     emailMarketing.Remetente        = model.Remetente;
     emailMarketing.IDEmailMarketing = model.IDEmailMarketing;
 }
        public ActionResult Create(MarketingViewModel model)
        {
            if (EmailMarketingValido(model))
            {
                var emailsMarketing = new EmailsMarketing();
                fillCTM(emailsMarketing, model);

                EmailMarketingService.save(emailsMarketing);

                addMensagemSucesso("E-mail marketing criado com sucesso!");
            }

            return(View(model));
        }
        private MarketingViewModel getViewModel(EmailsMarketing emailMarketing)
        {
            var model = new MarketingViewModel()
            {
                IDEmailMarketing = emailMarketing.IDEmailMarketing,
                Assunto          = emailMarketing.Assunto,
                Corpo            = emailMarketing.Corpo,
                DataCriacao      = emailMarketing.DataCriacao,
                Destinatario     = emailMarketing.Destinatarios,
                Remetente        = emailMarketing.Remetente
            };

            return(model);
        }
        public void save(EmailsMarketing emailMarketing)
        {
            if (emailMarketing.IDEmailMarketing == 0)
            {
                emailMarketing.DataCriacao = DateTime.Now;
                emailMarketing = MarteUpdatesContext.EmailsMarketing.Add(emailMarketing);
                MarteUpdatesContext.SaveChanges();
            }
            else
            {
                emailMarketing.DataModificacao = DateTime.Now;

                MarteUpdatesContext.EmailsMarketing.Attach(emailMarketing);
                MarteUpdatesContext.Entry(emailMarketing).State = EntityState.Modified;
                MarteUpdatesContext.SaveChanges();
            }
        }
        public void save(EmailsMarketing emailMarketing)
        {
            if (emailMarketing.IDEmailMarketing == 0)
            {
                emailMarketing.DataCriacao = DateTime.Now;
                emailMarketing             = MarteUpdatesContext.EmailsMarketing.Add(emailMarketing);
                MarteUpdatesContext.SaveChanges();
            }
            else
            {
                emailMarketing.DataModificacao = DateTime.Now;

                MarteUpdatesContext.EmailsMarketing.Attach(emailMarketing);
                MarteUpdatesContext.Entry(emailMarketing).State = EntityState.Modified;
                MarteUpdatesContext.SaveChanges();
            }
        }
 public void delete(EmailsMarketing emailMarketing)
 {
     _dao.delete(emailMarketing);
 }
 public void save(EmailsMarketing emailMarketing)
 {
     _dao.save(emailMarketing);
 }
 public void delete(EmailsMarketing emailMarketing)
 {
     MarteUpdatesContext.EmailsMarketing.Remove(emailMarketing);
     MarteUpdatesContext.SaveChanges();
 }
 public void delete(EmailsMarketing emailMarketing)
 {
     MarteUpdatesContext.EmailsMarketing.Remove(emailMarketing);
     MarteUpdatesContext.SaveChanges();
 }