private async void SaveRecipeBook(object obj) { if (string.IsNullOrWhiteSpace(PropertiesName)) { return; } RecipeBook recipeBook = propertiesObject as RecipeBook; recipeBook.Name = PropertiesName; recipeBook.Description = PropertiesDescription; if (obj is ListBox) { recipeBook.Recipes = new ObservableCollection <Recipe>(); ListBox lb = obj as ListBox; List <string> selectedRecipes = lb.SelectedItems.Cast <string>().ToList(); foreach (var sr in selectedRecipes) { if (string.IsNullOrWhiteSpace(sr)) { continue; } Recipe r = RecipeHelper.GetRecipes().Result.Where(x => x.Name == sr).SingleOrDefault(); if (r == null) { continue; } recipeBook.Recipes.Add(r); } ; } var addedBook = await RecipeBookHelper.AddOrUpdateRecipeBook(recipeBook); if (LoginUser.RecipeBooks.Where(x => x.Id == addedBook.Id).SingleOrDefault() == null) { LoginUser.RecipeBooks.Add(addedBook); } else { RecipeBook rb = LoginUser.RecipeBooks.Where(x => x.Name == addedBook.Name).SingleOrDefault(); LoginUser.RecipeBooks.Remove(rb); LoginUser.RecipeBooks.Add(addedBook); } LoadRecipeBooks(); }
private void DeletePropertiesCommand() { if (propertiesObject is RecipeBook) { RecipeBookHelper.RemoveRecipeBook(propertiesObject as RecipeBook); LoginUser.RecipeBooks.Remove(propertiesObject as RecipeBook); LoadRecipeBooks(); } else if (propertiesObject is Recipe) { RecipeHelper.RemoveRecipe(propertiesObject as Recipe); LoadRecipes(); } else if (propertiesObject is Coffee) { CoffeeHelper.RemoveCoffee(propertiesObject as Coffee); LoadCoffees(); } ShowProperties = false; }