public ActionResult SendEmailToUsers(EmailToAllUsers model)
        {
            List <ApplicationUser> users = new List <ApplicationUser>();

            users = db.Users.ToList();
            try
            {
                if (ModelState.IsValid)
                {
                    foreach (var user in users)
                    {
                        Email email = new Email(user.Email, model.Subject, model.EmailText);
                        email.Send();
                    }
                    return(RedirectToAction("Messages", "Admin"));
                }
                else
                {
                    return(View(model));
                }
            }
            catch
            { }
            ViewBag.Message = Resource.ErrorSendingEmail;
            ViewBag.Alert   = "alert alert-danger";
            return(View(model));
        }
Exemple #2
0
        public ActionResult SendEmailToAllUsers(EmailToAllUsers model, IEnumerable <string> roles)
        {
            List <ApplicationUser> users = new List <ApplicationUser>();

            var userStore   = new UserStore <ApplicationUser>(db);
            var userManager = new UserManager <ApplicationUser>(userStore);

            if (roles == null)
            {
                ViewBag.ErrorSendingEmail = Resource.ErrorSelectSendTo;
                return(View(model));
            }

            foreach (var user in db.Users)
            {
                foreach (var role in roles)
                {
                    if (userManager.IsInRole(user.Id, role))
                    {
                        if (!users.Contains(user))
                        {
                            users.Add(user);
                        }
                    }
                }
            }

            try
            {
                foreach (var user in users)
                {
                    Email email = new Email(user.Email, model.Subject, model.EmailText);
                    email.Send();
                }
                return(RedirectToAction("Messages", "Admin"));
            }
            catch
            { }
            ViewBag.ErrorSendingEmail = Resource.ErrorSendingEmail;

            return(View(model));
        }