public ActionResult New(CivilizationUnitsForm form) { Debug.WriteLine($"POST: Civilization Units Controller: New"); DB_users user = Auth.User; var game = GameState.Game; var dbUnit = game.GameStatistics.Units .Where(x => x.Info.id == form.SelectedUnitID.Value) .FirstOrDefault(); if (dbUnit == null) { return(View(form)); } DB_civilization_units unit = new DB_civilization_units(); unit.game_id = game.ID; unit.unit_id = dbUnit.Info.id; unit.species_id = (form.SelectedSpeciesID == -1) ? null : form.SelectedSpeciesID; unit.civilization_id = form.CivilizationID.Value; unit.name = form.Name; unit.current_health = dbUnit.Info.base_health; unit.experience = form.Experience; unit.gmnotes = form.GMNotes; Database.Session.Save(unit); Database.Session.Flush(); return(RedirectToRoute("ViewCivilization", new { civilizationID = form.CivilizationID.Value })); }
public ActionResult Edit(CivilizationUnitsForm form) { Debug.WriteLine($"POST: Civilization Units Controller: Edit"); DB_users user = Auth.User; var game = GameState.Game; DB_civilization_units unit = FindCivilizationUnit(form.ID).CivilizationInfo; if (unit.game_id != game.ID) { return(RedirectToRoute("game", new { gameID = game.Info.id })); } var dbUnit = game.GameStatistics.UnitsRaw .Where(x => x.id == form.SelectedUnitID.Value) .FirstOrDefault(); if (dbUnit == null) { return(View(form)); } unit.name = form.Name; if (RequireGMAdminAttribute.IsGMOrAdmin()) { unit.civilization_id = form.CivilizationID.Value; unit.unit_id = dbUnit.id; unit.species_id = (form.SelectedSpeciesID == -1) ? null : form.SelectedSpeciesID; unit.current_health = form.CurrentHealth; unit.experience = form.Experience; unit.gmnotes = form.GMNotes; } Database.Session.Update(unit); Database.Session.Flush(); return(RedirectToRoute("ViewCivilization", new { civilizationID = form.CivilizationID.Value })); }