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)); }
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)); }
// 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)); }
// 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)); }