Example #1
0
        public bool FamilyRoleChanged(FamilyRoleEmail model)
        {
            bool output = false;

            try
            {
                to = new MailboxAddress(model.User.DisplayName, model.User.Email);
                message.To.Add(to);

                message.Subject = $"{model.UserWhoMadeChange.DisplayName} has changed your role in the {model.Family.Name} family.";

                body.HtmlBody = $"<h1>Hi {model.User.DisplayName}!</h1><p>We just wanted to let you know that {model.UserWhoMadeChange.DisplayName} has changed your role in the {model.Family.Name} Family.</p><strong>Previous Role: </strong>{model.PreviousRole}<p><strong>New Role: </strong>{model.User.FamilyRole}</p><p></p><br><p>- The Let's Eat Team</p>";
                message.Body  = body.ToMessageBody();

                output = Connect() && Send() ? true : false;
            }
            catch
            {
                output = false;
            }

            return(output);
        }
Example #2
0
        public IActionResult ChangeMemberRole(ChangeMemberRoleViewModel vm)
        {
            if (authProvider.IsLoggedIn)
            {
                User currentUser = authProvider.GetCurrentUser();
                if (currentUser.FamilyRole == "Leader")
                {
                    User userToUpdate = usersDAL.GetUser(vm.userToChange.Id);
                    if (userToUpdate.FamilyRole != vm.userToChange.FamilyRole)
                    {
                        FamilyRoleEmail emailModel = new FamilyRoleEmail()
                        {
                            PreviousRole      = userToUpdate.FamilyRole,
                            UserWhoMadeChange = currentUser,
                            Family            = familyDAL.GetFamily(userToUpdate.FamilyId)
                        };
                        userToUpdate.FamilyRole = vm.userToChange.FamilyRole;
                        emailModel.User         = userToUpdate;

                        if (usersDAL.UpdateUser(userToUpdate))
                        {
                            emailProvider.FamilyRoleChanged(emailModel);
                        }
                    }

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View("NotAllowed"));
                }
            }
            else
            {
                return(View("Login", "Account"));
            }
        }