Esempio n. 1
0
        public ActionResult EditVehicle(AdminEditVehicleViewModel model)
        {
            IVehicleRepository repo = RepoFactory.CreateVehicleRepo();

            if (model.Delete)
            {
                repo.RemoveFeatured(model.Vehicle.VehicleId);
                repo.Delete(model.Vehicle.VehicleId);
                return(RedirectToAction("Index"));
            }
            if (model.Vehicle.Year > 2020 || model.Vehicle.Year < 1769)
            {
                ModelState.AddModelError("error", "No vehicles currently exist out side of the years 1769-2020");
                return(View(model));
            }
            if (model.Vehicle.ModelId == 0 || model.Vehicle.MakeId == 0)
            {
                ModelState.AddModelError("error", "Please Provide a make and model");
                return(View(model));
            }
            if (ModelState.IsValid)
            {
                repo.Update(model.Vehicle);
                if (model.Image != null)
                {
                    byte[]       imageByte = null;
                    BinaryReader rdr       = new BinaryReader(model.Image.InputStream);
                    imageByte = rdr.ReadBytes((int)model.Image.ContentLength);
                    if (System.IO.File.Exists(@"C:\Cohort\Repos\isaiah-dahlberg-individual-work\GuildCars\GuildCars\GuildCars.UI\Images\Inventory-" + model.Vehicle.VehicleId + ".jpg"))
                    {
                        System.IO.File.Delete(@"C:\Cohort\Repos\isaiah-dahlberg-individual-work\GuildCars\GuildCars\GuildCars.UI\Images\Inventory-" + model.Vehicle.VehicleId + ".jpg");
                    }
                    using (FileStream fs = new FileStream(@"C:\Cohort\Repos\isaiah-dahlberg-individual-work\GuildCars\GuildCars\GuildCars.UI\Images\Inventory-" + model.Vehicle.VehicleId + ".jpg", FileMode.Create))
                    {
                        fs.Write(imageByte, 0, imageByte.Length);
                    }
                }
                if (model.Feature)
                {
                    repo.RemoveFeatured(model.Vehicle.VehicleId);
                    repo.AddFeatured(model.Vehicle.VehicleId);
                }
                else
                {
                    repo.RemoveFeatured(model.Vehicle.VehicleId);
                }
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }