Exemplo n.º 1
0
        public virtual ActionResult TagEmails(string Emails)
        {
            List<string> mls = Emails.SplitToList(" ,;");

            var emails = new TagEmailsModel()
            {
                Emails = Emails,
                EmailTagsToAdd = new EmailTagListModel(crmService.GetDistinctTags().Select(t => new TagString() { TagSpace = t.Tagspace, Tag = t.Tag }).ToList()),
                EmailTagsToRemove = new EmailTagListModel(crmService.GetDistinctTags().Select(t => new TagString() { TagSpace = t.Tagspace, Tag = t.Tag }).ToList()),
                EmailTagsUsed = new EmailTagListModel(crmService.GetTagsForEmails(mls).Distinct().ToList())
            };

            return View(emails);
        }
Exemplo n.º 2
0
        public virtual ActionResult SaveTaggedEmails(string Emails, List<string> EmailTagsToAdd, List<string> EmailTagsToRemove)
        {
            List<string> mls = Emails.SplitToList(" ,");

            foreach (var mail in mls)
            {
                if (mail.Empty()) continue;
                var m = crmService.Email(mail);
                if (m==null) continue;

                if (EmailTagsToRemove != null)
                {
                    foreach (var stag in EmailTagsToRemove)
                    {
                        var tag = new TagString(stag);
                        crmService.ClearTagForEmail(m, tag.TagSpace, tag.Tag);
                    }
                }
                if (EmailTagsToAdd != null)
                {
                    foreach (var stag in EmailTagsToAdd)
                    {
                        var tag = new TagString(stag);
                        m.SetTag(tag.TagSpace, tag.Tag);
                    }
                }
            }
            crmService.SaveChanges();

            var emails = new TagEmailsModel()
            {
                Emails = Emails,
                EmailTagsToAdd = new EmailTagListModel(crmService.GetDistinctTags().Select(t => new TagString() { TagSpace = t.Tagspace, Tag = t.Tag }).ToList()),
                EmailTagsToRemove = new EmailTagListModel(crmService.GetDistinctTags().Select(t => new TagString() { TagSpace = t.Tagspace, Tag = t.Tag }).ToList()),
                EmailTagsUsed = new EmailTagListModel(crmService.GetTagsForEmails(mls))
            };

            return View("TagEmails", emails);
        }