Пример #1
0
        public IActionResult Index()
        {
            if (authProvider.IsLoggedIn)
            {
                FamilyViewModel fvm = new FamilyViewModel();
                fvm.CurrentUser = authProvider.GetCurrentUser();
                fvm.Family      = familyDAL.GetFamily(fvm.CurrentUser.FamilyId);

                return(View(fvm));
            }
            else
            {
                return(View("Login", "Account"));
            }
        }
Пример #2
0
        public IActionResult ChangeFamily(User user)
        {
            user = userDAL.GetUser(user.Email);

            if (String.IsNullOrEmpty(user.FamilyRole))
            {
                user.FamilyRole = "Member";
            }

            user.FamilyId = user.Invite.FamilyId;

            userDAL.ChangeFamily(user);

            InviteResponse ir = new InviteResponse()
            {
                Invitee = user,
                Inviter = user.Invite.InvitedBy,
                Family  = familyDAL.GetFamily(user.FamilyId)
            };

            emailProvider.AcceptInvite(ir);

            return(RedirectToAction("Index"));
        }
Пример #3
0
        public IActionResult ChangeFamily(User user)
        {
            ObjectResult output = StatusCode(500, error.ChangeFamily);

            user = userDAL.GetUser(user.Email);

            if (String.IsNullOrEmpty(user.FamilyRole))
            {
                user.FamilyRole = "Member";
            }

            if (user.Invite.FamilyId <= 1)
            {
                output = StatusCode(500, error.NoFamilyInvite);
            }
            else
            {
                user.FamilyId = user.Invite.FamilyId;

                if (userDAL.ChangeFamily(user))
                {
                    output = StatusCode(200, authProvider.GetCurrentUser());

                    InviteResponse ir = new InviteResponse()
                    {
                        Invitee = user,
                        Inviter = user.Invite.InvitedBy,
                        Family  = familyDAL.GetFamily(user.FamilyId)
                    };

                    emailProvider.AcceptInvite(ir);
                }
            }

            return(output);
        }
Пример #4
0
        public IActionResult InviteUserToFamily(int userId, int familyId, int invited_by)
        {
            Invite invite = new Invite()
            {
                FamilyId  = familyId,
                Invitee   = userId,
                InvitedBy = new User()
                {
                    Id = invited_by
                }
            };

            if (userDAL.GetUser(userId).FamilyId == 0)
            {
                if (userDAL.InviteUserToFamily(invite))
                {
                    //todo: Email user when they receive an invite
                    emailProvider.Invite(userDAL.GetUser(userId), userDAL.GetUser(invited_by), familyDAL.GetFamily(familyId));
                    return(Ok());
                }
                else
                {
                    return(StatusCode(500));
                }
            }
            else
            {
                return(StatusCode(500));
            }
        }