public IActionResult Edit(string id, string name)
        {
            var expression     = new WorkoutWithDaysByWorkoutNameExpression(id, name);
            var workoutRoutine = _repository.GetBy <WorkoutRoutine>(expression);

            return(this.View(workoutRoutine));
        }
        public IActionResult Edit(EditWorkoutViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(this.View(viewModel));
            }

            var getExpression = new WorkoutWithDaysByWorkoutNameExpression(viewModel.WorkoutId, viewModel.Name);
            var workout       = _repository.GetBy <WorkoutRoutine>(getExpression);

            var removeExpression = new WorkoutDaysByWorkoutRoutine(viewModel.WorkoutId);

            _repository.DeleteAllBy <WorkoutDay>(removeExpression);


            var workoutDays = SetUpInitialWorkoutDays(workout.Id, viewModel.Days, viewModel.ExerciseName);


            workout.Name        = viewModel.Name;
            workout.IsPublic    = viewModel.IsPublic;
            workout.WorkoutDays = workoutDays;

            _repository.Update <WorkoutRoutine>(workout);

            return(Redirect($"/Users/ViewProfile?username={this.User.Identity.Name}"));
        }
Example #3
0
        public TrainingViewModel GetTrainingModel(string workoutId, string day)
        {
            var expression = new WorkoutWithDaysByWorkoutNameExpression(workoutId);
            var workout    = _repository.GetBy <WorkoutRoutine>(expression);

            var actualDay = workout.WorkoutDays.Where(x => x.Day.ToString() == day).First();

            return(new TrainingViewModel
            {
                WorkoutId = workout.Id,
                WorkoutName = workout.Name,
                Day = actualDay.Day.ToString(),
                Exercises = actualDay.ExerciseWorkoutDay.Select(x => x.Exercise).ToList()
            });
        }