/// <summary> /// Constructor. /// </summary> public AssignmentSubmissionViewModel( AssignmentSubmissionResult result, IAssignmentUrlProvider urlProvider, ITimeZoneProvider timeZoneProvider) { var submissionUrl = urlProvider.GetAssignmentSubmissionUrl( result.AssignmentId, result.SubmissionDate, result.UserId); SubmissionDate = GetLink ( submissionUrl, result.SubmissionDate.FormatShortDateTime(timeZoneProvider), preventWrapping: true ); Score = GetColoredText ( "black", $"{result.Score} / {result.AssignmentPoints}", bold: false, preventWrapping: true ); Status = GetColoredText ( result.Status.GetColor(), result.Status.GetText(), result.Status.GetBold(), preventWrapping: true ); QuestionResults = result.QuestionResults .Select ( qr => new StudentQuestionResultViewModel ( qr, urlProvider, timeZoneProvider ) ).ToList(); }
/// <summary> /// Returns the score and status of an assignment submission result. /// </summary> private Tuple <double, bool> GetScoreAndStatus(AssignmentSubmissionResult result) { return(new Tuple <double, bool>(result.Score, result.Status.Late)); }