Example #1
0
        public ActionResult DeleteConfirmed(int id)
        {
            HikerTrailRating hikerTrailRating = db.HikerTrailRatings.Find(id);

            db.HikerTrailRatings.Remove(hikerTrailRating);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        // GET: Parks/Details/5
        public async Task <ActionResult> Details(int?id, ApiKeys apiKeys, ParkTrailRatingViewModel ratingFilter)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Park park = await db.Parks.FindAsync(id);

            park.CurrentWeatherInfo             = new CurrentWeatherInfo(); // Instantiate blank spot for data to bind to
            park.CurrentWeatherInfo.temperature = 876;                      // Doesn't matter what's here, will overwrite anyway
            park.Trails = db.HikingTrails.Where(i => i.ParkId == id).ToList();
            await RunBasicParkJson();
            await RunWeatherJson(apiKeys, park);
            await RunHikingJson(apiKeys, park);
            await GetApiKey();
            await GetParkMarker(id);
            await TrailRatings();

            First();
            //Second();
            if (park == null)
            {
                return(HttpNotFound());
            }

            // ====== Adding New Rating to trails =====================
            HikerTrailRating hikerTrailRating = new HikerTrailRating(); // new HikerTrailRating rating

            // --- Find person logged in -------------
            //CheckLoggedInUser();
            int hikerNum = CheckUserID();        // Setting variable from returned value

            hikerTrailRating.HikerId = hikerNum; // Add hiker's ID to Junction Table rating

            // -- HOW DO I PASS TRAIL ID THROUGH ON SELECTION? ----------------
            //List<HikingTrail> hikingTrail = await db.HikerTrailRatings.FindAsync(ratingFilter.HikingTrail).Where(t => t.);
            HikingTrail HikingTrail = await db.HikingTrails.FindAsync();

            HikingTrail hikingTrail = db.HikingTrails.Where(t => t.TrailId == id).FirstOrDefault(); // TAKING FIRST TRAIL ALWAYS // List of trails that match only to the current park

            hikerTrailRating.TrailId = hikingTrail.TrailId;

            // Figure out a way to add Rating to Junction Table
            // Find Hiker's selected rating

            ratingFilter.StarRatings = await db.StarRatings.Where(p => p.IndividualStarRating == ratingFilter.SelectedRating).ToListAsync(); // Matching Park database park name with filter's Selection

            ratingFilter.StarRating = new SelectList(ratingFilter.StarRatings.Select(p => p.IndividualStarRating).ToList());
            var hikerSelectedRating = ratingFilter.SelectedRating;

            hikerTrailRating.IndividualRating = hikerSelectedRating; // Add rating to Junction Table Rating

            db.HikerTrailRatings.Add(hikerTrailRating);              // Save results to database
            db.SaveChanges();
            return(View(park));
        }
Example #3
0
 public ActionResult Edit([Bind(Include = "HikerTrailRatingId,HikerId,TrailId,RatingAmt")] HikerTrailRating hikerTrailRating)
 {
     if (ModelState.IsValid)
     {
         db.Entry(hikerTrailRating).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.HikerId = new SelectList(db.Hikers, "HikerId", "FirstName", hikerTrailRating.HikerId);
     ViewBag.TrailId = new SelectList(db.HikingTrails, "TrailId", "TrailName", hikerTrailRating.TrailId);
     return(View(hikerTrailRating));
 }
Example #4
0
        // GET: HikerTrailRatings/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            HikerTrailRating hikerTrailRating = db.HikerTrailRatings.Find(id);

            if (hikerTrailRating == null)
            {
                return(HttpNotFound());
            }
            return(View(hikerTrailRating));
        }
Example #5
0
        // GET: HikerTrailRatings/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            HikerTrailRating hikerTrailRating = db.HikerTrailRatings.Find(id);

            if (hikerTrailRating == null)
            {
                return(HttpNotFound());
            }
            ViewBag.HikerId = new SelectList(db.Hikers, "HikerId", "FirstName", hikerTrailRating.HikerId);
            ViewBag.TrailId = new SelectList(db.HikingTrails, "TrailId", "TrailName", hikerTrailRating.TrailId);
            return(View(hikerTrailRating));
        }