public WorkoutExcercise UpdateWorkoutExercise(User user, WorkoutExcercise exercise) { var workout = _context.Workouts.FirstOrDefault(o => o.WorkoutId == exercise.WorkoutId); if (workout == null) { throw new KeyNotFoundException(); } if (!HaveAccessWorkout(user, workout)) { throw new AuthenticationException(); } var excerciseDb = _context.WorkoutsExcercises.FirstOrDefault(o => o.WorkoutExcerciseId == exercise.WorkoutExcerciseId); excerciseDb.IsSet = exercise.IsSet; if (exercise.Name != null) { excerciseDb.Name = exercise.Name; } if (exercise.About != null) { excerciseDb.About = exercise.About; } if (exercise.Order != null) { excerciseDb.Order = exercise.Order; } if (exercise.Repeats != null) { excerciseDb.Repeats = exercise.Repeats; } if (exercise.Calories != null) { excerciseDb.Calories = exercise.Calories; } if (exercise.Sets != null) { excerciseDb.Sets = exercise.Sets; } if (exercise.Duration != null) { excerciseDb.Duration = exercise.Duration; } if (exercise.Weight != null) { excerciseDb.Weight = exercise.Weight; } excerciseDb.Order = exercise.Order; _context.WorkoutsExcercises.Update(excerciseDb); _context.SaveChanges(); return(excerciseDb); }
public async Task <IActionResult> Post(Guid workoutId, [Bind("IsSet,Order,Repeats,Calories,Sets,Duration,Weight,Name,About")] WorkoutExcercise excercise) { User user = _userService.GetByEmail(User.Identity.Name); excercise.WorkoutId = workoutId; excercise = _workoutService.AddWorkoutExercise(user, excercise); return(Ok(excercise)); }
public WorkoutExcercise RemoveWorkoutExercise(User user, WorkoutExcercise exercise) { var workout = _context.Workouts.FirstOrDefault(o => o.WorkoutId == exercise.WorkoutId); if (HaveAccessWorkout(user, workout)) { _context.WorkoutsExcercises.Remove(exercise); _context.SaveChanges(); return(exercise); } else { throw new AuthenticationException(); } }