protected void cmdCustomerViewEmailAddresses_Click(object sender, EventArgs e)
        {
            ListViewProfile selectedProfile = ListViewProfile.Load(MetaClassName, dropListUserViews.SelectedValue, "EntityList");

            EntityObject[] entityObjectArray = BusinessManager.List(MetaClassName, selectedProfile.Filters.ToArray());

            List <string> addresses = new List <string>();

            foreach (var entityObject in entityObjectArray)
            {
                if (entityObject.Properties["Email"] != null)
                {
                    string email = entityObject.Properties["Email"].Value.ToString();
                    addresses.Add(email);
                }
            }
            if (addresses.Count == 0)
            {
                _jobUi.ShowInfo("Could not find any email addresses ");
                return;
            }

            // Add the items
            List <string> duplicateAddresses;
            List <string> invalidAddresses;

            System.Diagnostics.Stopwatch tmr = System.Diagnostics.Stopwatch.StartNew();
            int count = _job.ImportEmailAddresses(addresses.ToArray(), out invalidAddresses, out duplicateAddresses);

            tmr.Stop();

            string invalidMessage = "";

            if (invalidAddresses.Count > 0)
            {
                // Show invalid addresses
                invalidMessage  = "<blockquote>\n";
                invalidMessage += string.Join(", ", invalidAddresses.ToArray());
                invalidMessage += "</blockquote>\n";
            }

            // Construct log message
            string message = "Imported {0} email addresses from \"{1}\". <br />\n" +
                             "Number of duplicates: {2}<br />\n" +
                             "Number of invalid addresses: {3} <br />\n" +
                             "{4}";

            _jobUi.ShowInfo(string.Format(message,
                                          count,
                                          dropListUserViews.SelectedItem.Text,
                                          duplicateAddresses.Count,
                                          invalidAddresses.Count,
                                          invalidMessage
                                          ));
        }
Exemplo n.º 2
0
        protected RecipientStatus AddEPiServerGroupRecipients(IEmailImporter importer, string groupName)
        {
            RecipientStatus status = new RecipientStatus();

            List <string> addresses = new List <string>();

            string[] usersInRole = Roles.GetUsersInRole(groupName);

            foreach (string userName in usersInRole)
            {
                MembershipUser user = Membership.GetUser(userName);
                if (user != null && string.IsNullOrEmpty(user.Email) == false)
                {
                    addresses.Add(user.Email);
                }
            }

            if (addresses.Count == 0)
            {
                status.Status = "Could not find any email addresses for users in the EPiServer group.";
                return(status);
            }

            // Add the items
            List <string> duplicateAddresses;
            List <string> invalidAddresses;

            System.Diagnostics.Stopwatch tmr = System.Diagnostics.Stopwatch.StartNew();
            int count = importer.ImportEmailAddresses(addresses.ToArray(), out invalidAddresses, out duplicateAddresses);

            tmr.Stop();

            if (invalidAddresses.Count > 0)
            {
                status.InvalidMessage = string.Join(", ", invalidAddresses.ToArray());
            }

            status.ImportedEmails   = count;
            status.DuplicatedEmails = duplicateAddresses.Count;
            status.InvalidEmails    = invalidAddresses.Count;
            status.TimeToImport     = tmr.ElapsedMilliseconds;
            status.Status           = "Import ok";

            return(status);
        }
Exemplo n.º 3
0
        protected void cmdAddCsvEmailAddresses_Click(object sender, EventArgs e)
        {
            string addresses = txtAddEmailWorkItems.Text;

            if (string.IsNullOrEmpty(addresses))
            {
                _feedbackCtrl.ShowError("Please enter email addresses to import.");
                return;
            }

            // Add the items
            List <string> duplicateAddresses;
            List <string> invalidAddresses;

            System.Diagnostics.Stopwatch tmr = System.Diagnostics.Stopwatch.StartNew();
            int count = _importer.ImportEmailAddresses(addresses, out invalidAddresses, out duplicateAddresses);

            tmr.Stop();

            string invalidMessage = "";

            if (invalidAddresses.Count > 0)
            {
                // Show invalid addresses
                invalidMessage  = "<blockquote>\n";
                invalidMessage += string.Join(", ", invalidAddresses.ToArray());
                invalidMessage += "</blockquote>\n";
            }

            // Construct log message
            string message = "Imported {0} email addresses <br/>\n" +
                             "Number of duplicates: {2} <br/>\n" +
                             "Number of invalid addresses: {3} <br />\n" +
                             "{4}";

            _feedbackCtrl.ShowInfo(string.Format(message,
                                                 count.ToString(),
                                                 tmr.ElapsedMilliseconds.ToString(),
                                                 duplicateAddresses.Count.ToString(),
                                                 invalidAddresses.Count.ToString(),
                                                 invalidMessage
                                                 ));
        }
Exemplo n.º 4
0
        protected RecipientStatus AddEPiServerGroupRecipients(IEmailImporter importer, string groupName)
        {
            RecipientStatus status = new RecipientStatus();

            List<string> addresses = new List<string>();
            string[] usersInRole = Roles.GetUsersInRole(groupName);

            foreach (string userName in usersInRole)
            {
                MembershipUser user = Membership.GetUser(userName);
                if (user != null && string.IsNullOrEmpty(user.Email) == false)
                    addresses.Add(user.Email);
            }

            if (addresses.Count == 0)
            {
                status.Status = "Could not find any email addresses for users in the EPiServer group.";
                return status;
            }

            // Add the items
            List<string> duplicateAddresses;
            List<string> invalidAddresses;

            System.Diagnostics.Stopwatch tmr = System.Diagnostics.Stopwatch.StartNew();
            int count = importer.ImportEmailAddresses(addresses.ToArray(), out invalidAddresses, out duplicateAddresses);
            tmr.Stop();

            if (invalidAddresses.Count > 0)
            {
                status.InvalidMessage = string.Join(", ", invalidAddresses.ToArray());
            }

            status.ImportedEmails = count;
            status.DuplicatedEmails = duplicateAddresses.Count;
            status.InvalidEmails = invalidAddresses.Count;
            status.TimeToImport = tmr.ElapsedMilliseconds;
            status.Status = "Import ok";

            return status;
        }