public ActionResult DeleteConfirmed(int id) { FoodGroups foodGroups = db.FoodGroups.Find(id); db.FoodGroups.Remove(foodGroups); db.SaveChanges(); return(RedirectToAction("Index")); }
/// <summary> /// Removes all inactive food groups. /// </summary> public virtual void RemoveInactiveFoodGroups() { _foodGroups = FoodGroups.Where(foodGroup => foodGroup == PrimaryFoodGroup || foodGroup.IsActive).ToList(); foreach (var foodGroup in _foodGroups) { foodGroup.RemoveInactiveChildren(); } }
public ActionResult Edit([Bind(Include = "id,desc")] FoodGroups foodGroups) { if (ModelState.IsValid) { db.Entry(foodGroups).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(foodGroups)); }
/// <summary>Registers the item into it's registry</summary> public override IdentifiableItem Register() { Identifiable.LARGO_CLASS.Add(ID); base.Register(); if (Definition.Diet == null) { Definition.Diet = new SlimeDiet(); } if (SuperFoods != null) { FavoriteFoods.AddRange(SuperFoods); } SlimeDiet diet = Definition.Diet; // TODO: Add the new diets if (FoodGroups.Contains(SlimeEat.FoodGroup.FRUIT)) { SlimeUtils.PopulateDiet(ID, Identifiable.FRUIT_CLASS, diet, FavoriteFoods, Plort); SlimeUtils.PopulateDiet(ID, Identifiable.FRUIT_CLASS, diet, FavoriteFoods, Plort2); } if (FoodGroups.Contains(SlimeEat.FoodGroup.VEGGIES)) { SlimeUtils.PopulateDiet(ID, Identifiable.VEGGIE_CLASS, diet, FavoriteFoods, Plort); SlimeUtils.PopulateDiet(ID, Identifiable.VEGGIE_CLASS, diet, FavoriteFoods, Plort2); } if (FoodGroups.Contains(SlimeEat.FoodGroup.MEAT)) { SlimeUtils.PopulateDiet(ID, Identifiable.MEAT_CLASS, diet, FavoriteFoods, Plort); SlimeUtils.PopulateDiet(ID, Identifiable.MEAT_CLASS, diet, FavoriteFoods, Plort2); } if (FoodGroups.Contains(SlimeEat.FoodGroup.GINGER)) { SlimeUtils.PopulateDiet(ID, new[] { Identifiable.Id.GINGER_VEGGIE }, diet, FavoriteFoods, Plort); SlimeUtils.PopulateDiet(ID, new[] { Identifiable.Id.GINGER_VEGGIE }, diet, FavoriteFoods, Plort2); } if (FoodGroups.Contains(SlimeEat.FoodGroup.NONTARRGOLD_SLIMES)) { SlimeUtils.PopulateDiet(ID, Identifiable.TOFU_CLASS, diet, FavoriteFoods, Plort); SlimeUtils.PopulateDiet(ID, Identifiable.TOFU_CLASS, diet, FavoriteFoods, Plort2); } // Populates the synergy part SlimeUtils.PopulateDiet(ID, SuperFoods, diet, SuperFoods, SynergyPlort); return(this); }
public ActionResult Create([Bind(Include = "id,desc")] FoodGroups foodGroups) { if (ModelState.IsValid) { db.FoodGroups.Add(foodGroups); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(foodGroups)); }
/// <summary>Registers the item into it's registry</summary> public override IdentifiableItem Register() { base.Register(); if (Definition.Diet == null) { Definition.Diet = new SlimeDiet(); } Definition.Diet.EatMap = new List <SlimeDiet.EatMapEntry>(); SlimeDiet diet = Definition.Diet; if (CustomDietBehaviour || FoodGroups.Count <= 0) { return(this); } // TODO: Add the new diets if (FoodGroups.Contains(SlimeEat.FoodGroup.FRUIT)) { SlimeUtils.PopulateDiet(ID, Identifiable.FRUIT_CLASS, diet, FavoriteFoods, Plort); } if (FoodGroups.Contains(SlimeEat.FoodGroup.VEGGIES)) { SlimeUtils.PopulateDiet(ID, Identifiable.VEGGIE_CLASS, diet, FavoriteFoods, Plort); } if (FoodGroups.Contains(SlimeEat.FoodGroup.MEAT)) { SlimeUtils.PopulateDiet(ID, Identifiable.MEAT_CLASS, diet, FavoriteFoods, Plort); } if (FoodGroups.Contains(SlimeEat.FoodGroup.GINGER)) { SlimeUtils.PopulateDiet(ID, new[] { Identifiable.Id.GINGER_VEGGIE }, diet, FavoriteFoods, Plort); } if (FoodGroups.Contains(SlimeEat.FoodGroup.PLORTS)) { SlimeUtils.PopulateDiet(ID, Identifiable.PLORT_CLASS, diet, FavoriteFoods, Plort, true); Definition.CanLargofy = false; } if (FoodGroups.Contains(SlimeEat.FoodGroup.NONTARRGOLD_SLIMES)) { SlimeUtils.PopulateDiet(ID, Identifiable.TOFU_CLASS, diet, FavoriteFoods, Plort); } return(this); }
// GET: FoodGroups/Delete/5 public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } FoodGroups foodGroups = db.FoodGroups.Find(id); if (foodGroups == null) { return(HttpNotFound()); } return(View(foodGroups)); }
/// <summary> /// Save relations. /// </summary> /// <param name="dataProvider">Implementation of the data provider used to access data.</param> /// <param name="isInserting">Indication of whether we are inserting or updating.</param> public virtual void SaveRelations(IDataProviderBase <MySqlDataReader, MySqlCommand> dataProvider, bool isInserting) { ArgumentNullGuard.NotNull(dataProvider, nameof(dataProvider)); if (Identifier.HasValue == false) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.IllegalValue, Identifier, "Identifier")); } if (PrimaryFoodGroup != null && PrimaryFoodGroup.Identifier.HasValue == false) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.IllegalValue, PrimaryFoodGroup.Identifier, "PrimaryFoodGroup.Identifier")); } IFoodGroup foodGroupWithoutIdentifier = FoodGroups.FirstOrDefault(foodGroup => foodGroup.Identifier.HasValue == false); if (foodGroupWithoutIdentifier != null) { throw new IntranetRepositoryException(Resource.GetExceptionMessage(ExceptionMessage.IllegalValue, foodGroupWithoutIdentifier.Identifier, "FoodGroups[].Identifier")); } IList <FoodItemGroupProxy> foodItemGroups = FoodItemGroupProxy.GetFoodItemGroups(dataProvider, Identifier.Value).ToList(); if (PrimaryFoodGroup?.Identifier != null && foodItemGroups.SingleOrDefault(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value == PrimaryFoodGroup.Identifier.Value) == null) { using (IFoodWasteDataProvider subDataProvider = (IFoodWasteDataProvider)dataProvider.Clone()) { foodItemGroups.Add(subDataProvider.Add(FoodItemGroupProxy.Build(this, PrimaryFoodGroup, true))); } } IFoodGroup missingFoodGroup = FoodGroups.FirstOrDefault(foodGroup => foodGroup.Identifier.HasValue && foodItemGroups.Any(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value == foodGroup.Identifier.Value) == false); while (missingFoodGroup != null) { using (IFoodWasteDataProvider subDataProvider = (IFoodWasteDataProvider)dataProvider.Clone()) { foodItemGroups.Add(subDataProvider.Add(FoodItemGroupProxy.Build(this, missingFoodGroup, false))); } missingFoodGroup = FoodGroups.FirstOrDefault(foodGroup => foodGroup.Identifier.HasValue && foodItemGroups.Any(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value == foodGroup.Identifier.Value) == false); } FoodItemGroupProxy noLongerExistingFoodItemGroup = foodItemGroups.FirstOrDefault(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && FoodGroups.Any(foodGroup => foodGroup.Identifier.HasValue && foodGroup.Identifier.Value == foodItemGroup.FoodGroupIdentifier.Value) == false); while (noLongerExistingFoodItemGroup != null) { using (IFoodWasteDataProvider subDataProvider = (IFoodWasteDataProvider)dataProvider.Clone()) { subDataProvider.Delete(noLongerExistingFoodItemGroup); foodItemGroups.Remove(noLongerExistingFoodItemGroup); } noLongerExistingFoodItemGroup = foodItemGroups.FirstOrDefault(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && FoodGroups.Any(foodGroup => foodGroup.Identifier.HasValue && foodGroup.Identifier.Value == foodItemGroup.FoodGroupIdentifier.Value) == false); } if (PrimaryFoodGroup == null || PrimaryFoodGroup.Identifier.HasValue == false) { _dataProvider = (IFoodWasteDataProvider)dataProvider; return; } FoodItemGroupProxy primaryFoodItemGroup = foodItemGroups.SingleOrDefault(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value == PrimaryFoodGroup.Identifier.Value); if (primaryFoodItemGroup != null && primaryFoodItemGroup.IsPrimary == false) { primaryFoodItemGroup.IsPrimary = true; using (IFoodWasteDataProvider subDataProvider = (IFoodWasteDataProvider)dataProvider.Clone()) { foodItemGroups.Remove(primaryFoodItemGroup); foodItemGroups.Add(subDataProvider.Save(primaryFoodItemGroup)); } } FoodItemGroupProxy nonPrimaryFoodItemGroup = foodItemGroups.Where(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value != PrimaryFoodGroup.Identifier.Value).SingleOrDefault(foodItemGroup => foodItemGroup.IsPrimary); while (nonPrimaryFoodItemGroup != null) { nonPrimaryFoodItemGroup.IsPrimary = false; using (IFoodWasteDataProvider subDataProvider = (IFoodWasteDataProvider)dataProvider.Clone()) { foodItemGroups.Remove(nonPrimaryFoodItemGroup); foodItemGroups.Add(subDataProvider.Save(nonPrimaryFoodItemGroup)); } nonPrimaryFoodItemGroup = foodItemGroups.Where(foodItemGroup => foodItemGroup.FoodGroupIdentifier.HasValue && foodItemGroup.FoodGroupIdentifier.Value != PrimaryFoodGroup.Identifier.Value).SingleOrDefault(foodItemGroup => foodItemGroup.IsPrimary); } _dataProvider = (IFoodWasteDataProvider)dataProvider; }