Ejemplo n.º 1
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);
        }
        public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
        {
            // Depending on what we're adding addresses to, we need to call different controllers
            string apiUrl = NewsLetterConfiguration.GetModuleBaseDir() + "/api/recipients/";
            int    id     = 0;

            if (importer is Job)
            {
                apiUrl = apiUrl + "AddRecipientsToJobFromEPiServerGroupname";
                id     = ((Job)importer).Id;
            }
            else
            {
                apiUrl = apiUrl + "AddRecipientsToListFromEPiServerGroupname";
                id     = ((RecipientList)importer).Id;
            }
            apiUrl = apiUrl + "?id=" + id.ToString();

            ApiUrl = apiUrl;
        }
        public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
        {
            // Depending on what we're adding addresses to, we need to call different controllers
            string apiUrl = NewsLetterConfiguration.GetModuleBaseDir() + "/api/recipients/";
            int id = 0;

            if (importer is Job)
            {
                apiUrl = apiUrl + "AddRecipientsToJobFromEPiServerGroupname";
                id = ((Job) importer).Id;
            }
            else
            {
                apiUrl = apiUrl + "AddRecipientsToListFromEPiServerGroupname";
                id = ((RecipientList)importer).Id;
            }
            apiUrl = apiUrl + "?id=" + id.ToString();

            ApiUrl = apiUrl;
        }
Ejemplo 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;
        }
Ejemplo n.º 5
0
        public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
        {
            // Depending on what we're adding addresses to, we need to call different controllers
            string apiUrl = NewsLetterConfiguration.GetModuleBaseDir() + "/api/recipients/";
            int    id     = 0;

            if (importer is Job)
            {
                apiUrl = apiUrl + "AddRecipientsToJobFromList";
                id     = ((Job)importer).Id;
                apiUrl = apiUrl + "?jobId=" + id.ToString();
            }
            else
            {
                // We're adding from a list to another listg
                apiUrl = apiUrl + "AddRecipientsToListFromList";
                id     = ((RecipientList)importer).Id;
                apiUrl = apiUrl + "?destinationListId=" + id.ToString();
            }

            ApiUrl = apiUrl;
        }
Ejemplo n.º 6
0
        public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
        {
            // Depending on what we're adding addresses to, we need to call different controllers
            string apiUrl = NewsLetterConfiguration.GetModuleBaseDir() + "/api/recipients/";
            int id = 0;

            if (importer is Job)
            {
                apiUrl = apiUrl + "AddRecipientsToJobFromList";
                id = ((Job)importer).Id;
                apiUrl = apiUrl + "?jobId=" + id.ToString();
            }
            else
            {
                // We're adding from a list to another listg
                apiUrl = apiUrl + "AddRecipientsToListFromList";
                id = ((RecipientList)importer).Id;
                apiUrl = apiUrl + "?destinationListId=" + id.ToString();
            }

            ApiUrl = apiUrl;
        }
 public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
 {
     _job = importer;
     _jobUi = feedbackUi;
 }
Ejemplo n.º 8
0
 public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
 {
     _importer = importer;
     _job = (Job) importer;
     _feedbackCtrl = feedbackUi;
 }
 public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
 {
     _job   = (Job)importer;
     _jobUi = feedbackUi;
 }
Ejemplo n.º 10
0
 public void Initialize(IEmailImporter importer, IShowFeedback feedbackUi)
 {
     _importer     = importer;
     _feedbackCtrl = feedbackUi;
 }