Exemplo n.º 1
0
        public RatingValue?RatingFor(StepExercise stepExercise)
        {
            var ratings = ExerciseRatings.Where(p => p.StepExercise.Id == stepExercise.Id).ToList();

            if (ratings.Count == 0)
            {
                return(null);
            }
            return((RatingValue)Math.Floor((decimal)ratings.Sum(p => (int)p.RatingValue) / ratings.Count()));
        }
        public ActionResult EditStepExercise(ManageStepExerciseViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            StepExercise stepExercise = null;

            if (model.Id != null)
            {
                stepExercise = Db.StepExercises.FirstOrDefault(p => p.Id == model.Id);
                if (stepExercise != null)
                {
                    stepExercise.Name        = model.Name;
                    stepExercise.Description = model.Description;
                }
            }
            else
            {
                var currentUserId = User.Identity.GetUserId();

                RoadStep roadStep = null;
                if (model.RoadStepId != null)
                {
                    roadStep = Db.RoadSteps.FirstOrDefault(p => p.Id == model.RoadStepId);
                }

                stepExercise = new StepExercise(model.Name, model.Description, currentUserId, roadStep);
                Db.StepExercises.Add(stepExercise);
            }

            Db.SaveChanges();

            return(RedirectToAction("EditRoadStep", new { @id = model.RoadStepId }));
        }