Exemple #1
0
        /// <summary>
        /// Grants permission to a specified user
        /// </summary>
        /// <param name="gpVM"></param>
        /// <returns>Json</returns>
        public IActionResult GrantPermission(GrantPermissionVM gpVM)
        {
            //get the user from the databse
            var user = _groceryListUsers.ReadUser(gpVM.SelectedUserId);
            //Read the selected list from the database
            var list = _groceryLists.Read(gpVM.ListId);

            if (user == null || list == null)
            {
                return(Json("Failed"));
            }
            else
            {
                //Create a new GroceryListUser
                var glu = new GroceryListUser
                {
                    GroceryList   = list,
                    User          = user,
                    GroceryListId = list.Id,
                    UserId        = user.Id
                };
                //Add access in the database
                var groceryListUser = _groceryListUsers.Create(glu);
                groceryListUser.User.GroceryListUsers.Add(groceryListUser);
                groceryListUser.GroceryList.GroceryListUsers.Add(groceryListUser);
                return(Json("Okay"));
            }
        }
Exemple #2
0
        public IActionResult Create(CreateGroceryListVM cglVM)
        {
            if (ModelState.IsValid)
            {
                //Create a new grocery list
                var list = _groceryLists.Create(cglVM.CreateGroceryList());

                //Create new GroceryListUser
                GroceryListUser glu = new GroceryListUser
                {
                    UserId        = _userManager.GetUserId(User),
                    GroceryListId = list.Id,
                    GroceryList   = _groceryLists.Read(list.Id),
                    User          = _groceryListUsers.ReadAllUsers().FirstOrDefault(u => u.Id == _userManager.GetUserId(User))
                };

                //Give access to the user who created it
                _groceryListUsers.Create(glu);
                list.GroceryListUsers.Add(glu);
                glu.User.GroceryListUsers.Add(glu);

                return(RedirectToAction("Index"));
            }
            return(View(cglVM));
        }
Exemple #3
0
 public GroceryListUser Create(GroceryListUser groceryListUsers)
 {
     _db.GroceryListUsers.Add(groceryListUsers);
     _db.SaveChanges();
     return(groceryListUsers);
 }