public async Task <IActionResult> EditGroceryItem(EditGroceryItemViewModel vm) { GroceryItem editedGroceryItem = Context.GroceryItems.Single(c => c.ID == vm.GroceryId); var isAuthorized = await AuthorizationService.AuthorizeAsync( User, editedGroceryItem, FoodOperations.Update); var currentUserId = UserManager.GetUserId(User); if (!isAuthorized.Succeeded) { return(Forbid()); } if (ModelState.IsValid) { editedGroceryItem.Name = vm.Name; editedGroceryItem.GroceryNote = vm.GroceryNote; Context.SaveChanges(); return(Redirect("/Grocery")); } EditGroceryItemViewModel newEditViewModel = new EditGroceryItemViewModel(editedGroceryItem); newEditViewModel.GroceryList = Context.GroceryItems.Where(g => g.IsInPantry == false).Where(g => g.UserID == currentUserId).ToList(); return(View(newEditViewModel)); }
public async Task <IActionResult> EditGroceryItem(int groceryId) { var currentUserId = UserManager.GetUserId(User); GroceryItem grocItem = Context.GroceryItems.Single(g => g.ID == groceryId); var isAuthorized = await AuthorizationService.AuthorizeAsync( User, grocItem, FoodOperations.Update); if (!isAuthorized.Succeeded) { return(Forbid()); } EditGroceryItemViewModel vm = new EditGroceryItemViewModel(grocItem); vm.GroceryList = Context.GroceryItems.Where(g => g.IsInPantry == false).Where(g => g.UserID == currentUserId).ToList(); return(View(vm)); }