Example #1
0
        public int GetMaxScoreForUnitByScoringGroup(Unit unit, ScoringGroup scoringGroup)
        {
            var unitScoringGroup   = unit.Scoring.Groups.Values.FirstOrDefault(g => g.Id == scoringGroup.Id);
            var maxAdditionalScore = unitScoringGroup != null && unitScoringGroup.CanBeSetByInstructor ? unitScoringGroup.MaxAdditionalScore : 0;

            return(unit.Slides.Where(s => s.ScoringGroup == scoringGroup.Id).Sum(s => s.MaxScore) + maxAdditionalScore);
        }
Example #2
0
 public AbstractScoringGroupInfo(ScoringGroup scoringGroup)
 {
     Id           = scoringGroup.Id;
     Name         = scoringGroup.Name ?? "";
     Abbreviation = scoringGroup.Abbreviation ?? "";
     Description  = scoringGroup.Description ?? "";
     Weight       = scoringGroup.Weight;
 }
Example #3
0
        private static GroupScoringGroupInfo BuildGroupScoringGroupInfo(ScoringGroup scoringGroup, List <ScoringGroup> scoringGroupsCanBeSetInSomeUnit, List <EnabledAdditionalScoringGroup> enabledScoringGroups)
        {
            var canBeSetByInstructorInSomeUnit = scoringGroupsCanBeSetInSomeUnit.Select(g => g.Id).Contains(scoringGroup.Id);
            var isEnabledManually = enabledScoringGroups.Select(g => g.ScoringGroupId).Contains(scoringGroup.Id);

            return(new GroupScoringGroupInfo(scoringGroup)
            {
                AreAdditionalScoresEnabledForAllGroups = scoringGroup.EnabledForEveryone,
                CanInstructorSetAdditionalScoreInSomeUnit = canBeSetByInstructorInSomeUnit,
                AreAdditionalScoresEnabledInThisGroup = (scoringGroup.EnabledForEveryone || !canBeSetByInstructorInSomeUnit) ? (bool?)null : isEnabledManually
            });
        }
Example #4
0
        private static GroupScoringGroupInfo BuildGroupScoringGroupInfo(ScoringGroup scoringGroup, List <ScoringGroup> scoringGroupsCanBeSetInSomeUnit, List <EnabledAdditionalScoringGroup> enabledScoringGroups)
        {
            var canBeSetByInstructorInSomeUnit = scoringGroupsCanBeSetInSomeUnit.Select(g => g.Id).Contains(scoringGroup.Id);
            var isEnabledManually = enabledScoringGroups.Select(g => g.ScoringGroupId).Contains(scoringGroup.Id);

            return(new GroupScoringGroupInfo
            {
                Id = scoringGroup.Id,
                Name = scoringGroup.Name ?? "",
                Abbreviation = scoringGroup.Abbreviation ?? "",
                Description = scoringGroup.Description ?? "",
                IsEnabledForEveryone = scoringGroup.EnabledForEveryone,
                CanBeSetByInstructorInSomeUnit = canBeSetByInstructorInSomeUnit,
                IsEnabled = (scoringGroup.EnabledForEveryone || !canBeSetByInstructorInSomeUnit) ? (bool?)null : isEnabledManually
            });
        }
        public static System.Web.WebPages.HelperResult TocAdditionalScore(ScoringGroup group, int score)
        {
            return(new System.Web.WebPages.HelperResult(__razor_helper_writer => {
                WebViewPage.WriteLiteralTo(@__razor_helper_writer, "\t<li class=\"slide-list-item full-size\">\r\n\t\t<i class=\"navbar-label\" title=\"\"></i>\r" +
                                           "\n\t\t<span style=\"margin-right: 5px\">");


                WebViewPage.WriteTo(@__razor_helper_writer, group.Name);

                WebViewPage.WriteLiteralTo(@__razor_helper_writer, "</span>\r\n\t\t<span class=\"score right\">");


                WebViewPage.WriteTo(@__razor_helper_writer, SlideHtml.Score(score, group.MaxAdditionalScore));

                WebViewPage.WriteLiteralTo(@__razor_helper_writer, "</span>\r\n\t</li>\r\n");
            }));
        }
        public static System.Web.WebPages.HelperResult TocAdditionalScore(ScoringGroup group, int score)
        {
#line default
#line hidden
            return(new System.Web.WebPages.HelperResult(__razor_helper_writer => {
                WriteLiteralTo(__razor_helper_writer, "\t<li");

                WriteLiteralTo(__razor_helper_writer, " class=\"slide-list-item full-size\"");

                WriteLiteralTo(__razor_helper_writer, ">\r\n\t\t<i");

                WriteLiteralTo(__razor_helper_writer, " class=\"navbar-label\"");

                WriteLiteralTo(__razor_helper_writer, " title=\"\"");

                WriteLiteralTo(__razor_helper_writer, "></i>\r\n\t\t<span");

                WriteLiteralTo(__razor_helper_writer, " style=\"margin-right: 5px\"");

                WriteLiteralTo(__razor_helper_writer, ">");

                WriteTo(__razor_helper_writer, group.Name);

                WriteLiteralTo(__razor_helper_writer, "</span>\r\n\t\t<span");

                WriteLiteralTo(__razor_helper_writer, " class=\"score right\"");

                WriteLiteralTo(__razor_helper_writer, ">");

                WriteTo(__razor_helper_writer, SlideHtml.ShowScore(score, group.MaxAdditionalScore));

                WriteLiteralTo(__razor_helper_writer, "</span>\r\n\t</li>\r\n");
            }));

#line default
#line hidden
        }
Example #7
0
        public int GetTotalOnlyFullScoreForUserInUnitByScoringGroup(string userId, Unit unit, ScoringGroup scoringGroup)
        {
            var shouldBeSolvedSlides = ShouldBeSolvedSlidesByUnitScoringGroup[Tuple.Create(unit.Id, scoringGroup.Id)];
            var onlyFullScore        = 0;

            foreach (var slide in shouldBeSolvedSlides)
            {
                var slideScore = ScoreByUserAndSlide[Tuple.Create(userId, slide.Id)];
                onlyFullScore += GetOnlyFullScore(slideScore, slide.MaxScore);
            }
            return(onlyFullScore + AdditionalScores[Tuple.Create(userId, unit.Id, scoringGroup.Id)]);
        }
Example #8
0
 public int GetTotalScoreForUserInUnitByScoringGroup(string userId, Unit unit, ScoringGroup scoringGroup)
 {
     return(ScoreByUserUnitScoringGroup[Tuple.Create(userId, unit.Id, scoringGroup.Id)] +
            AdditionalScores[Tuple.Create(userId, unit.Id, scoringGroup.Id)]);
 }
Example #9
0
 public CourseStatisticsScoringGroupInfo(ScoringGroup group)
 {
     Id           = group.Id;
     Abbreviation = group.Abbreviation;
     Name         = group.Name;
 }
Example #10
0
 public CourseStatisticsUnitAdditionalScoreInfo(ScoringGroup g)
 {
     ScoringGroupId     = g.Id;
     MaxAdditionalScore = g.MaxAdditionalScore;
 }
Example #11
0
 public UnitScoringGroupInfo(ScoringGroup scoringGroup) : base(scoringGroup)
 {
     MaxAdditionalScore = scoringGroup.MaxAdditionalScore;
     CanInstructorSetAdditionalScore = scoringGroup.CanBeSetByInstructor;
 }
Example #12
0
 public GroupScoringGroupInfo(ScoringGroup scoringGroup)
     : base(scoringGroup)
 {
 }