コード例 #1
0
        /// <summary>
        /// Takes in the park id to find a park by the id from the database to display a detail page
        /// </summary>
        /// <param name="id">The park id to search for</param>
        /// <returns></returns>
        public ActionResult Detail(string id)
        {
            //Sets the initial Session["isFahrenheit"] variable if this is the first time visiting the page
            if (Session["isFahrenheit"] == null)
            {
                Session["isFahrenheit"] = true;
            }

            //gets all the details needed for the Park Detail page
            var park = _parkDAL.GetParkById(id);

            TempData["id"]       = id.ToString();
            park.FiveDayForecast = _weatherDAL.GetFiveDayForecast(id);
            return(View("Detail", park));
        }
コード例 #2
0
        public ActionResult ViewTrail(string trailName, int?panoramicId)
        {
            List <TrailModel> trails = trailDAL.GetAllTrails();

            trails.ForEach(trail => trail.TrailHead = panoramicDAL.GetTrailHeadByTrailId(trail.TrailId));
            List <PanoramicModel>      panoramics     = panoramicDAL.GetAllPanoramics();
            List <LastSeenImagesModel> lastSeenImages = lastSeenImagesDAL.GetAllLastSeenImages();
            List <LastSeenVideosModel> lastSeenVideos = lastSeenVideosDAL.GetAllLastSeenVideos();
            LastSeenModel superModel = new LastSeenModel()
            {
                Images = lastSeenImages,
                Videos = lastSeenVideos
            };

            if (!trails.Select(trail => trail.Name).Contains(trailName) ||
                (panoramics.FirstOrDefault(panoramic => panoramic.PanoramicId == panoramicId) == null) && panoramicId != null)
            {
                return(new HttpStatusCodeResult(404));
            }

            int       selectedParkId = trails.First(trail => trail.Name == trailName).ParkId;
            ParkModel selectedPark   = parkDAL.GetParkById(selectedParkId);

            int           selectedTrailId = trails.First(trail => trail.Name == trailName).TrailId;
            List <string> selectedTrail   = trailDAL.GetTrailDescriptionByTrailId(selectedTrailId);

            if (panoramicId == null)
            {
                return(RedirectToAction("ViewTrail", new { trailName = trailName, panoramicId = trails.First(trail => trail.Name == trailName).TrailHead.PanoramicId }));
            }
            ViewBag.TrailName          = trailName;
            ViewBag.ParkName           = selectedPark.Name;
            ViewBag.NameAndDescription = selectedTrail;

            return(View("ViewTrail", superModel));
        }