internal static async Task <TrainingDay> UpdateTrainingDayAsync(TrainingDay trainingDay, TrainingDayScenario trainingDayScenario)
        {
            if (trainingDay == null)
            {
                return(null);
            }

            var trainingDayWithScenario = new TrainingDayWithScenario()
            {
                TrainingDay         = trainingDay,
                TrainingDayScenario = trainingDayScenario
            };

            return(await HttpConnector.Instance.PostAsync <TrainingDayWithScenario, TrainingDay>("Api/TrainingDays/Update", trainingDayWithScenario));
        }
        public IActionResult Update([FromBody] TrainingDayWithScenario trainingDayWithScenario)
        {
            try
            {
                if (trainingDayWithScenario == null || trainingDayWithScenario.TrainingDay == null || trainingDayWithScenario.TrainingDayScenario == null)
                {
                    return(BadRequest());
                }

                var trainingDay         = trainingDayWithScenario.TrainingDay;
                var trainingDayScenario = trainingDayWithScenario.TrainingDayScenario;
                if (string.IsNullOrWhiteSpace(trainingDay.UserId) || trainingDay.Year == 0 || trainingDay.WeekOfYear == 0 ||
                    trainingDay.DayOfWeek < 0 || trainingDay.DayOfWeek > 6 || SessionUserId != trainingDay.UserId)
                {
                    return(BadRequest());
                }


                //Verify valid week of year
                if (trainingDay.WeekOfYear > 0 && trainingDay.WeekOfYear <= 52)
                {
                    trainingDay = _trainingDaysService.UpdateTrainingDay(trainingDay, trainingDayScenario);
                    if (trainingDay == null)
                    {
                        return(BadRequest(new WebApiException(string.Format(Translation.IMPOSSIBLE_TO_UPDATE_P0, Translation.TRAINING_DAY))));
                    }
                    else
                    {
                        return(new OkObjectResult(trainingDay));
                    }
                }
                else
                {
                    return(BadRequest());
                }
            }
            catch (Exception exception)
            {
                return(BadRequest(new WebApiException("Error", exception)));
            }
        }