// GET: TripLocation/Add
        public ActionResult Add(int?thisTripId, int?thisLocationId)
        {
            if (thisTripId == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            if (thisLocationId != null)
            {
                // used to index the number of locations when showing list in Views. Assigned to model.Number
                int i = 1;
                foreach (var item in dbcontext.Trip_Locations.ToList())
                {
                    if (item.Id_Trip == thisTripId)
                    {
                        i++;
                    }
                }

                dbcontext.Trip_Locations.Add(new Trip_Locations {
                    Id_Location = (int)thisLocationId, Number = i, Id_Trip = (int)thisTripId
                });                                                                                                                            //add a new entry connecting location-trip
                dbcontext.SaveChanges();

                return(RedirectToAction("Index", new { thisTripId = thisTripId, Message = ManageMessageId.AddEntrySuccess }));
            }

            AddTripLocationsViewModel model = new AddTripLocationsViewModel();

            model.List   = dbcontext.Locations.ToList();
            model.TripId = (int)thisTripId;

            return(View(model));
        }
        public ActionResult Add(int?thisTripId, AddTripLocationsViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (thisTripId == null)
                {
                    return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
                }

                var list = new List <Location>();
                foreach (var item in dbcontext.Locations.ToList())
                {
                    list.Add(item);
                }
                model.List = list;
                return(View(model));
            }
            return(View(model));
        }