Пример #1
0
 public ActionResult Create(PlanetViewModel planet)
 {
     try
     {
         if (ModelState.IsValid)
         {
             int retId = 0;
             planet.Uploader = User.Identity.Name;
             IPlanetRepo pr = new PlanetRepo();
             retId = pr.Create(planet);
             if (retId > 0)
             {
                 return RedirectToAction("Details", "Planet", new { id = retId });
             }
             return Redirect("/Planet/Create");
         }
         ModelState.AddModelError("invalidmodel", "Invalid parameters for creating a Planet.");
         return Redirect("/Planet/Create");
     }
     catch(Exception e)
     {
         var message = e.Message;
         ModelState.AddModelError("unknownerror", message);
         return Redirect("/Planet/Create");
     }
 }
Пример #2
0
        // GET: StarSystem/Details/5
        public ActionResult Details(int id)
        {
            IStarSystemRepo ssr = new StarSystemRepo();
            IPlanetRepo pr = new PlanetRepo();
            DetailsViewModel dvm = new DetailsViewModel();

            var planets = pr.GetByStarSystemId(id).ToList();
            var starSystem = ssr.GetById(id);
            dvm.StarSystem = starSystem;
            dvm.Planets = planets;
            return View(dvm);
        }
Пример #3
0
 // GET: Planet/Details/5
 public ActionResult Details(int id)
 {
     IPlanetRepo pr = new PlanetRepo();
     IStarSystemRepo ssr = new StarSystemRepo();
     IFileSystemRepo fsr = new FileSystemRepo();
     var planet = pr.GetById(id);
     planet.StarSystem = ssr.GetById(planet.StarSystem.Id);
     planet.PlanetImagePaths = new Dictionary<string, string>();
     foreach (var item in fsr.GetFileDataByPlanetId(id))
     {
         planet.PlanetImagePaths.Add(item.Path.Replace("\\", "/"), item.Name);
     }
     return View(planet);
 }
Пример #4
0
 public ActionResult UploadFilesByPlanetId(int planetId)
 {
     IPlanetRepo pr = new PlanetRepo();
     var files = Request.Files.AllKeys.Select(fileName => Request.Files[fileName]).Where(file => file.ContentLength > 0).ToList();
     PlanetViewModel pvm = pr.GetById(planetId);
     if (User.Identity.Name != pvm.Uploader) return Json(new {Message = "You are not the original uploader of this Planet."});
     foreach (var file in files)
     {
         var fileName = Guid.NewGuid() + Path.GetExtension(file.FileName);
         var virtualPath = "~/Content/img/" + DateTime.Today.ToString("MMddyyyy");
         var subPath = Server.MapPath(virtualPath);
         if (!Directory.Exists(subPath))
         {
             Directory.CreateDirectory(subPath);
         }
         var path = Path.Combine(subPath, fileName);
         try
         {
             file.SaveAs(path);
         }
         catch (Exception e)
         {
             continue;
         }
         IFileSystemRepo fsr = new FileSystemRepo();
         fsr.SaveFileDataByPlanetId(
             Path.Combine(virtualPath.Replace("~/", "/").Replace("\\\\", "/"), fileName), fileName, planetId);
     }
     return Json(new { Message = string.Empty });
 }
Пример #5
0
 // GET: Planet
 public ActionResult Index()
 {
     IPlanetRepo pr = new PlanetRepo();
     IStarSystemRepo ssr = new StarSystemRepo();
     var planets = pr.GetAll().ToList();
     var starSystems = ssr.GetAll().ToList();
     foreach (var planet in planets)
     {
         planet.StarSystem = starSystems.Single(ss => ss.Id == planet.StarSystem.Id);
     }
     return View(planets);
 }
Пример #6
0
        public ActionResult Edit(PlanetViewModel pvm)
        {
            try
            {
                IPlanetRepo pr = new PlanetRepo();

                pr.Update(pvm);

                return RedirectToAction("Index");
            }
            catch
            {
                return View();
            }
        }
Пример #7
0
 public ActionResult Edit(int id)
 {
     IPlanetRepo pr = new PlanetRepo();
     var pvm = pr.GetById(id);
     ViewBag.SystemSelect = SystemSelect();
     ViewBag.ClassSelect = ClassSelect();
     ViewBag.CategorySelect = CategorySelect();
     return View(pvm);
 }
Пример #8
0
        public ActionResult Edit(int id)
        {
            IStarSystemRepo ssr = new StarSystemRepo();
            IPlanetRepo pr = new PlanetRepo();
            DetailsViewModel dvm = new DetailsViewModel();

            var planets = pr.GetByStarSystemId(id).ToList();
            var starSystem = ssr.GetById(id);
            dvm.StarSystem = starSystem;
            dvm.Planets = planets;
            var user = User.Identity;
            if (starSystem.Uploader == user.Name)
            {
                return View("Edit", starSystem);
            }
            return View("Details", dvm);
        }