public ActionResult New(CivilizationResearchForm form)
        {
            Debug.WriteLine(string.Format("POST: Civilization Research Controller: New"));
            DB_users user = Auth.User;
            var      game = GameState.Game;

            DB_civilization_research research = new DB_civilization_research();

            research.game_id         = game.ID;
            research.research_id     = form.SelectedResearchID.Value;
            research.civilization_id = form.CivilizationID.Value;
            Database.Session.Save(research);

            Database.Session.Flush();
            return(RedirectToRoute("ViewCivilization", new { civilizationID = form.CivilizationID.Value }));
        }
        public ActionResult Edit(CivilizationResearchForm form)
        {
            Debug.WriteLine($"POST: Civilization Research Controller: Edit");
            DB_users user = Auth.User;
            var      game = GameState.Game;

            DB_civilization_research research = FindCivilizationResearch(form.ID).CivilizationInfo;

            if (research.game_id != game.ID)
            {
                return(RedirectToRoute("game", new { gameID = game.Info.id }));
            }

            if (RequireGMAdminAttribute.IsGMOrAdmin())
            {
                research.research_id     = form.SelectedResearchID.Value;
                research.civilization_id = form.CivilizationID.Value;
            }
            Database.Session.Update(research);

            Database.Session.Flush();
            return(RedirectToRoute("ViewCivilization", new { civilizationID = form.CivilizationID.Value }));
        }