diff options
Diffstat (limited to 'lib/models/data/recipe_data_class.dart')
-rw-r--r-- | lib/models/data/recipe_data_class.dart | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/lib/models/data/recipe_data_class.dart b/lib/models/data/recipe_data_class.dart index fd4ef22..3f707bc 100644 --- a/lib/models/data/recipe_data_class.dart +++ b/lib/models/data/recipe_data_class.dart @@ -38,14 +38,25 @@ class RecipeData { if (_result.isEmpty) return; + recipesIdentical(Recipe a, Recipe b) { + if (a.title != b.title) return false; + if (a.description != b.description) return false; + + return true; + } + _result.forEach((item) { - recipeList.add(Recipe( + Recipe recipe = Recipe( title: item["title"], description: item["description"], favorite: item["favorite"], rating: item["rating"], image: item["image"], - )); + ); + + if (RecipeData.recipeList.where((element) => recipesIdentical(element, recipe)).isEmpty) recipeList.add(recipe); }); + + save(); } } |