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 )); }
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); }
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 )); }
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; }