public ActionResult Add()
        {
            var vModel = new AddEditMaterialViewModel();
            vModel.authedUser = UserManager.FindById(User.Identity.GetUserId());
            vModel.ValidMaterials = BackingDataCache.GetAll<IMaterial>();

            return View("~/Views/GameAdmin/Material/Add.cshtml", vModel);
        }
Esempio n. 2
0
        public ActionResult Add(long Template = -1)
        {
            AddEditMaterialViewModel vModel = new AddEditMaterialViewModel(Template)
            {
                AuthedUser = UserManager.FindById(User.Identity.GetUserId())
            };

            return(View("~/Views/GameAdmin/Material/Add.cshtml", vModel));
        }
Esempio n. 3
0
        public ActionResult Edit(int id, string ArchivePath = "")
        {
            Material obj = TemplateCache.Get <Material>(id);

            if (obj == null)
            {
                return(RedirectToAction("Index", new { Message = "That does not exist" }));
            }

            AddEditMaterialViewModel vModel = new AddEditMaterialViewModel(ArchivePath, obj)
            {
                AuthedUser = UserManager.FindById(User.Identity.GetUserId())
            };

            return(View("~/Views/GameAdmin/Material/Edit.cshtml", vModel));
        }
Esempio n. 4
0
        public ActionResult Add(AddEditMaterialViewModel vModel)
        {
            ApplicationUser authedUser = UserManager.FindById(User.Identity.GetUserId());

            IMaterial newObj = vModel.DataObject;
            string    message;

            if (newObj.Create(authedUser.GameAccount, authedUser.GetStaffRank(User)) == null)
            {
                message = "Error; Creation failed.";
            }
            else
            {
                LoggingUtility.LogAdminCommandUsage("*WEB* - AddMaterialData[" + newObj.Id.ToString() + "]", authedUser.GameAccount.GlobalIdentityHandle);
                message = "Creation Successful.";
            }

            return(RedirectToAction("Index", new { Message = message }));
        }
Esempio n. 5
0
        public ActionResult Edit(int id, AddEditMaterialViewModel vModel)
        {
            ApplicationUser authedUser = UserManager.FindById(User.Identity.GetUserId());

            Material obj = TemplateCache.Get <Material>(id);
            string   message;

            if (obj == null)
            {
                message = "That does not exist";
                return(RedirectToAction("Index", new { Message = message }));
            }

            obj.Name                 = vModel.DataObject.Name;
            obj.Conductive           = vModel.DataObject.Conductive;
            obj.Density              = vModel.DataObject.Density;
            obj.Ductility            = vModel.DataObject.Ductility;
            obj.Flammable            = vModel.DataObject.Flammable;
            obj.GasPoint             = vModel.DataObject.GasPoint;
            obj.Magnetic             = vModel.DataObject.Magnetic;
            obj.Mallebility          = vModel.DataObject.Mallebility;
            obj.Porosity             = vModel.DataObject.Porosity;
            obj.SolidPoint           = vModel.DataObject.SolidPoint;
            obj.TemperatureRetention = vModel.DataObject.TemperatureRetention;
            obj.Viscosity            = vModel.DataObject.Viscosity;
            obj.HelpText             = vModel.DataObject.HelpText;
            obj.Resistance           = vModel.DataObject.Resistance;
            obj.Composition          = vModel.DataObject.Composition;

            if (obj.Save(authedUser.GameAccount, authedUser.GetStaffRank(User)))
            {
                LoggingUtility.LogAdminCommandUsage("*WEB* - EditMaterialData[" + obj.Id.ToString() + "]", authedUser.GameAccount.GlobalIdentityHandle);
                message = "Edit Successful.";
            }
            else
            {
                message = "Error; Edit failed.";
            }

            return(RedirectToAction("Index", new { Message = message }));
        }
Esempio n. 6
0
        public ActionResult EditMaterialData(int id)
        {
            string message = string.Empty;
            var vModel = new AddEditMaterialViewModel();
            vModel.authedUser = UserManager.FindById(User.Identity.GetUserId());
            vModel.ValidMaterials = ReferenceWrapper.GetAll<Material>();

            var obj = ReferenceWrapper.GetOne<Material>(id);

            if (obj == null)
            {
                message = "That does not exist";
                return RedirectToAction("ManageMaterialData", new { Message = message });
            }

            vModel.DataObject = obj;
            vModel.NewName = obj.Name;
            vModel.NewConductive = obj.Conductive;
            vModel.NewDensity = obj.Density;
            vModel.NewDuctility = obj.Ductility;
            vModel.NewFlammable = obj.Flammable;
            vModel.NewGasPoint = obj.GasPoint;
            vModel.NewMagnetic = obj.Magnetic;
            vModel.NewMallebility = obj.Mallebility;
            vModel.NewPorosity = obj.Porosity;
            vModel.NewSolidPoint = obj.SolidPoint;
            vModel.NewTemperatureRetention = obj.TemperatureRetention;
            vModel.NewViscosity = obj.Viscosity;

            return View(vModel);
        }
Esempio n. 7
0
        public ActionResult AddMaterialData(AddEditMaterialViewModel vModel)
        {
            string message = string.Empty;
            var authedUser = UserManager.FindById(User.Identity.GetUserId());

            var newObj = new Material();
            newObj.Name = vModel.NewName;
            newObj.Conductive = vModel.NewConductive;
            newObj.Density = vModel.NewDensity;
            newObj.Ductility = vModel.NewDuctility;
            newObj.Flammable = vModel.NewFlammable;
            newObj.GasPoint = vModel.NewGasPoint;
            newObj.Magnetic = vModel.NewMagnetic;
            newObj.Mallebility = vModel.NewMallebility;
            newObj.Porosity = vModel.NewPorosity;
            newObj.SolidPoint = vModel.NewSolidPoint;
            newObj.TemperatureRetention = vModel.NewTemperatureRetention;
            newObj.Viscosity = vModel.NewViscosity;

            if (vModel.Resistances != null)
            {
                int resistancesIndex = 0;
                foreach (var type in vModel.Resistances)
                {
                    if (type > 0)
                    {
                        if (vModel.ResistanceValues.Count() <= resistancesIndex)
                            break;

                        var currentValue = vModel.ResistanceValues[resistancesIndex];

                        if (currentValue > 0)
                            newObj.Resistance.Add((DamageType)type, currentValue);
                    }

                    resistancesIndex++;
                }
            }

            if (vModel.Compositions != null)
            {
                int compositionsIndex = 0;
                foreach (var materialId in vModel.Compositions)
                {
                    if (materialId > 0)
                    {
                        if (vModel.CompositionPercentages.Count() <= compositionsIndex)
                            break;

                        var currentValue = vModel.CompositionPercentages[compositionsIndex];
                        var material = ReferenceWrapper.GetOne<Material>(materialId);

                        if (material != null && currentValue > 0)
                            newObj.Composition.Add(material, currentValue);
                    }

                    compositionsIndex++;
                }
            }

            if (newObj.Create() == null)
                message = "Error; Creation failed.";
            else
            {
                LoggingUtility.LogAdminCommandUsage("*WEB* - AddMaterialData[" + newObj.ID.ToString() + "]", authedUser.GameAccount.GlobalIdentityHandle);
                message = "Creation Successful.";
            }

            return RedirectToAction("ManageMaterialData", new { Message = message });
        }
Esempio n. 8
0
        public ActionResult AddMaterialData()
        {
            var vModel = new AddEditMaterialViewModel();
            vModel.authedUser = UserManager.FindById(User.Identity.GetUserId());
            vModel.ValidMaterials = ReferenceWrapper.GetAll<Material>();

            return View(vModel);
        }
Esempio n. 9
0
        public ActionResult EditMaterialData(int id, AddEditMaterialViewModel vModel)
        {
            string message = string.Empty;
            var authedUser = UserManager.FindById(User.Identity.GetUserId());

            var obj = ReferenceWrapper.GetOne<Material>(id);
            if (obj == null)
            {
                message = "That does not exist";
                return RedirectToAction("ManageMaterialData", new { Message = message });
            }

            obj.Name = vModel.NewName;
            obj.Conductive = vModel.NewConductive;
            obj.Density = vModel.NewDensity;
            obj.Ductility = vModel.NewDuctility;
            obj.Flammable = vModel.NewFlammable;
            obj.GasPoint = vModel.NewGasPoint;
            obj.Magnetic = vModel.NewMagnetic;
            obj.Mallebility = vModel.NewMallebility;
            obj.Porosity = vModel.NewPorosity;
            obj.SolidPoint = vModel.NewSolidPoint;
            obj.TemperatureRetention = vModel.NewTemperatureRetention;
            obj.Viscosity = vModel.NewViscosity;

            if (vModel.Resistances != null)
            {
                int resistancesIndex = 0;
                foreach (var type in vModel.Resistances)
                {
                    if (type > 0)
                    {
                        if (vModel.ResistanceValues.Count() <= resistancesIndex)
                            break;

                        if (obj.Resistance.Any(ic => (short)ic.Key == type))
                        {
                            obj.Resistance.Remove((DamageType)type);
                            var currentValue = vModel.ResistanceValues[resistancesIndex];

                            obj.Resistance.Add((DamageType)type, currentValue);
                        }
                        else
                        {
                            var currentValue = vModel.ResistanceValues[resistancesIndex];

                            obj.Resistance.Add((DamageType)type, currentValue);
                        }
                    }

                    resistancesIndex++;
                }
            }

            foreach (var container in obj.Resistance.Where(ic => !vModel.Resistances.Contains((short)ic.Key)))
                obj.Resistance.Remove(container);

            if (vModel.Compositions != null)
            {
                int compositionsIndex = 0;
                foreach (var materialId in vModel.Compositions)
                {
                    if (materialId > 0)
                    {
                        if (vModel.CompositionPercentages.Count() <= compositionsIndex)
                            break;

                        var material = ReferenceWrapper.GetOne<Material>(materialId);
                        short currentValue = -1;

                        if (material != null)
                        {
                            if (obj.Composition.Any(ic => ic.Key.ID == materialId))
                            {

                                obj.Composition.Remove(material);
                                currentValue = vModel.CompositionPercentages[compositionsIndex];
                            }
                            else
                                currentValue = vModel.CompositionPercentages[compositionsIndex];

                            obj.Composition.Add(material, currentValue);
                        }
                    }

                    compositionsIndex++;
                }
            }

            foreach (var container in obj.Composition.Where(ic => !vModel.Compositions.Contains(ic.Key.ID)))
                obj.Composition.Remove(container);

            if (obj.Save())
            {
                LoggingUtility.LogAdminCommandUsage("*WEB* - EditMaterialData[" + obj.ID.ToString() + "]", authedUser.GameAccount.GlobalIdentityHandle);
                message = "Edit Successful.";
            }
            else
                message = "Error; Edit failed.";

            return RedirectToAction("ManageMaterialData", new { Message = message });
        }
Esempio n. 10
0
        public ActionResult Edit(int id)
        {
            string message = string.Empty;
            var vModel = new AddEditMaterialViewModel();
            vModel.authedUser = UserManager.FindById(User.Identity.GetUserId());
            vModel.ValidMaterials = BackingDataCache.GetAll<Material>();

            var obj = BackingDataCache.Get<Material>(id);

            if (obj == null)
            {
                message = "That does not exist";
                return RedirectToAction("Index", new { Message = message });
            }

            vModel.DataObject = obj;
            vModel.NewName = obj.Name;
            vModel.NewConductive = obj.Conductive;
            vModel.NewDensity = obj.Density;
            vModel.NewDuctility = obj.Ductility;
            vModel.NewFlammable = obj.Flammable;
            vModel.NewGasPoint = obj.GasPoint;
            vModel.NewMagnetic = obj.Magnetic;
            vModel.NewMallebility = obj.Mallebility;
            vModel.NewPorosity = obj.Porosity;
            vModel.NewSolidPoint = obj.SolidPoint;
            vModel.NewTemperatureRetention = obj.TemperatureRetention;
            vModel.NewViscosity = obj.Viscosity;
            vModel.NewHelpBody = obj.HelpText;

            return View("~/Views/GameAdmin/Material/Edit.cshtml", vModel);
        }