public ActionResult Create()
 {
     WorkoutRegimen workoutRegimen = new WorkoutRegimen() {
          StartDate = DateTime.Today
     };
     return View(new WorkoutRegimenViewModel(workoutRegimen, fitnessUserRepository.DataContext));
 }
 public void Delete(FitnessUser fitnessUser, WorkoutRegimen workoutRegimen)
 {
     if (!isAssociated(fitnessUser, workoutRegimen))
         throw new ApplicationException(
             String.Format("Workout regimen #{0} does not belong to user #{1}.", workoutRegimen.WorkoutRegimenId, fitnessUser.FitnessUserId)
         );
     DataContext.WorkoutRegimens.DeleteOnSubmit(workoutRegimen);
 }
 public WorkoutRegimenViewModel(WorkoutRegimen workoutRegimen, FitnessTrackerDataContext dc)
 {
     dataContext = dc;
     WorkoutRegimen = workoutRegimen;
     exerciseTypeRepository = new ExerciseTypeRepository(dataContext);
     ExerciseTypeList = CreateExerciseTypeSelectList();
     DaysInWeekList = CreateDaysInWeekSelectList();
     NumWeeksList = CreateNumWeeksSelectList();
     DistanceUnitTypeList = CreateDistanceUnitSelectList();
 }
        public ActionResult Create(WorkoutRegimenViewModel wrfvmToAdd)
        {
            try
            {
                FitnessUser currentUser = fitnessUserRepository.FindByUserName(User.Identity.Name).Single();

                wrfvmToAdd.WorkoutRegimen.WorkoutRegimenId = 0; // clear primary key value so that DB can create new value
                workoutRegimenRepository.Add(currentUser, wrfvmToAdd.WorkoutRegimen);
                workoutRegimenRepository.Save();
                string redirectToPage = (wrfvmToAdd.HasDistanceData() ? "Edit" : "Details");
                return RedirectToAction(redirectToPage, new { id = wrfvmToAdd.WorkoutRegimen.WorkoutRegimenId });
            }
            catch
            {
                WorkoutRegimen workoutRegimen = new WorkoutRegimen() {
                    StartDate = DateTime.Today
                };
                return View(new WorkoutRegimenViewModel(workoutRegimen, fitnessUserRepository.DataContext));
            }
        }
 public IQueryable<Workout> FindAllWorkoutsByUserAndRegimen(FitnessUser fitnessUser, WorkoutRegimen regimen)
 {
     return DataContext.Workouts.Where(w => (w.WorkoutRegimen.FitnessUserId == fitnessUser.FitnessUserId) &&
                                            (w.WorkoutRegimenId == regimen.WorkoutRegimenId));
 }
 //
 // Insert/Delete Methods
 public void Add(WorkoutRegimen regimen, Workout workout)
 {
     regimen.Workouts.Add(workout);
     DataContext.Workouts.InsertOnSubmit(workout);
 }
		private void detach_WorkoutRegimens(WorkoutRegimen entity)
		{
			this.SendPropertyChanging();
			entity.ExerciseType = null;
		}
		private void detach_WorkoutRegimens1(WorkoutRegimen entity)
		{
			this.SendPropertyChanging();
			entity.StartingDistanceUnit = null;
		}
		private void attach_WorkoutRegimens(WorkoutRegimen entity)
		{
			this.SendPropertyChanging();
			entity.FinishingDistanceUnit = this;
		}
 partial void DeleteWorkoutRegimen(WorkoutRegimen instance);
 partial void UpdateWorkoutRegimen(WorkoutRegimen instance);
 partial void InsertWorkoutRegimen(WorkoutRegimen instance);
		private void detach_WorkoutRegimens(WorkoutRegimen entity)
		{
			this.SendPropertyChanging();
			entity.FitnessUser = null;
		}
 //
 // Insert/Delete Methods
 public bool isAssociated(FitnessUser fitnessUser, WorkoutRegimen workoutRegimen)
 {
     return (fitnessUser.WorkoutRegimens.Where(
         wr => (wr.WorkoutRegimenId == workoutRegimen.WorkoutRegimenId)
     ).ToList().Count() > 0);
 }
 public Workout CreateWorkout(WorkoutRegimen workoutRegimen)
 {
     Workout workout = new Workout();
     workout.WorkoutRegimen = workoutRegimen;
     return workout;
 }
 public void Add(FitnessUser fitnessUser, WorkoutRegimen workoutRegimen)
 {
     fitnessUser.WorkoutRegimens.Add(workoutRegimen);
     DataContext.WorkoutRegimens.InsertOnSubmit(workoutRegimen);
 }