示例#1
0
        public PartialViewResult LeaveHouseModal()
        {
            var userId  = User.Identity.GetUserId();
            var user    = db.Users.Find(userId);
            var houseId = user.HouseholdId;
            int?HouseId = houseId;
            //var data = new LeaveHouseViewModel();

            var myHouse = houseHelper.UsersInHouse(HouseId);
            //data.LeavehouseCount = myHouse.Count();

            var housename = "";

            if (user.Household == null)
            {
                housename = "NoHouse";
            }
            if (user.Household != null)
            {
                housename = user.Household.Name;
            }
            var house     = housename;
            var HouseInfo = new LeaveHouseViewModel
            {
                HouseholdId     = houseId,
                Household       = house,
                LeavehouseCount = myHouse.Count()
            };

            //Use roleHelper in conjunction with a foreach loop to grab only the users that
            //occupy the role of Member
            var members   = new List <ApplicationUser>();
            var occupants = db.Users.Where(u => u.HouseholdId == houseId).ToList();

            foreach (var person in occupants)
            {
                if (roleHelper.IsUserInRole(person.Id, "Member"))
                {
                    members.Add(person);
                }
            }
            ViewBag.Members = new SelectList(members, "Id", "Email");
            return(PartialView("~/Views/Shared/_LeaveHouseModal.cshtml", HouseInfo));
        }
示例#2
0
        public ActionResult LeaveHouseHeadofHousehold([Bind(Include = "Id,Name,HouseholdId")] Household household, int MemberCount, string Members)
        {
            if (ModelState.IsValid)
            {
                var userId       = User.Identity.GetUserId();
                var user         = db.Users.Find(userId);
                var UsersinHouse = houseHelper.UsersInHouse(household.Id).ToList();

                roleHelper.RemoveUserFromRole(userId, "HeadofHousehold");
                roleHelper.RemoveUserFromRole(Members, "Member");
                roleHelper.AddUserToRole(Members, "HeadofHousehold");
                roleHelper.AddUserToRole(userId, "Guest");

                user.HouseholdId = null;

                db.SaveChanges();
                return(RedirectToAction("Index", "Home"));
            }
            return(View(household));
        }