Exemplo n.º 1
0
        private string ReplaceCodeReviewsBuiltinParameters(string content, Certificate certificate, Course course)
        {
            var codeReviewsCount         = slideCheckingsRepo.GetUsersPassedManualExerciseCheckings(course.Id, certificate.UserId).Count();
            var exercisesMaxReviewScores = course.Slides
                                           .OfType <ExerciseSlide>().ToDictionary(s => s.Id, s => s.Scoring.CodeReviewScore);
            var codeReviewsFullCount = slideCheckingsRepo
                                       .GetUsersPassedManualExerciseCheckings(course.Id, certificate.UserId)
                                       .Count(s => s.Score == exercisesMaxReviewScores.GetOrDefault(s.SlideId, -1));

            content = SubstituteOneParameter(content, "codereviews.passed", codeReviewsCount.ToString());
            content = SubstituteOneParameter(content, "codereviews.passed_maxscore", codeReviewsFullCount.ToString());
            return(content);
        }