Пример #1
0
        public MyTripPage(int tripId)
        {
            InitializeComponent();

            _viewModel     = new MyTripViewModel();
            BindingContext = _viewModel;
            _tripId        = tripId;
        }
Пример #2
0
        public IActionResult MyTrip(int tripId)
        {
            Trip viewTrip = context.Trips.Single(t => t.ID == tripId);

            MyTripViewModel myTripView = MyTripViewModel.ViewTrip(viewTrip);

            return(View(myTripView));
        }
Пример #3
0
        public ActionResult DeleteTrip(int tripId)
        {
            MyTripViewModel model = new MyTripViewModel();

            tripDAL.DeleteTripLandmark(tripId);
            tripDAL.DeleteTrip(tripId);
            return(View("My Trips", model));
        }
Пример #4
0
 public ActionResult NewTrip()
 {
     if (!base.IsAuthenticated)
     {
         return RedirectToAction("Login", "Users");
     }
     MyTripViewModel myTripViewModel = PopulateMyTripViewModel();
     return View("NewTrip", myTripViewModel);
 }
Пример #5
0
        private MyTripViewModel PopulateMyTripViewModel()
        {
            MyTripViewModel myTripViewModel = new MyTripViewModel();

            // Retrieve all categories
            myTripViewModel.Categories = landmarkDAL.GetAllCategories();

            // Retrieve all landmarks and their properties
            List<Landmark> allLandmarks = landmarkDAL.GetAllLandmarks();
            foreach (Landmark landmark in allLandmarks)
            {
                landmark.Schedule = landmarkDAL.GetLandmarkSchedule(landmark.Id);
                landmark.Categories = landmarkDAL.GetLandmarkCategories(landmark.Id);
            }

            return myTripViewModel;
        }
Пример #6
0
        public ActionResult NewTrip(MyTripViewModel myTripViewModel)
        {
            if (!ModelState.IsValid)
            {
                return RedirectToAction("NewTrip", myTripViewModel);
            }

            // Insert new trip into database
            int currentUserId = userDAL.GetUserId(base.CurrentUser);
            Trip newTrip = PopulateTrip(myTripViewModel);
            int newTripId = tripDAL.SaveNewTrip(newTrip, currentUserId);

            // Insert trip landmarks into database
            for (int i = 0; i < myTripViewModel.SelectedLandmarkIds.Length; i++)
            {
                tripDAL.SaveTripLandmark(newTripId, myTripViewModel.SelectedLandmarkIds[i], i + 1);
            }

            // Redirect user to view list of all their stored trips
            return RedirectToAction("MyTrips", "MyTrips");
        }
Пример #7
0
        private Trip PopulateTrip(MyTripViewModel model)
        {
            // Create new Trip
            Trip trip = new Trip();

            // Assign trip name, description, and date
            trip.Name = model.TripName;
            trip.Description = model.TripDescription;
            trip.TripDate = model.TripDate;

            // Assign trip landmarks selected by user and bound to ViewModel
            List<Landmark> landmarksInTrip = new List<Landmark>();
            for (int i = 0; i < model.SelectedLandmarkIds.Length; i++)
            {
                int landmarkId = model.SelectedLandmarkIds[i];
                landmarksInTrip.Add(landmarkDAL.GetLandmark(landmarkId));
                landmarksInTrip[i].Categories = landmarkDAL.GetLandmarkCategories(landmarkId);
            }
            trip.Landmarks = landmarksInTrip;

            return trip;
        }