$# Displays one row of the grading summary $# Expects several variables: $# summary :: SheetGradeSummary -- summary to display $# sumHeader :: UniWorXMessage -- row header $# hasPassing :: Maybe Int -- Should Passing be displayed? $# hasMarkedPasses :: Maybe Int -- Number of marked pass-sheets $# hasPoints :: Maybe Points -- Should Points be displayed? $# hasMarkedPoints :: Maybe Int -- Number of marked point-sheets $# $# TODO: Durschnittliche Punktzahl anzeigen $# TODO: Extra-Spalte für Punkte Bewertet = numMarkedPoints / Punkte Gesamt = sumSheetPoints $# $maybe nrSheets <- positiveSum $ summary ^. _numSheets _{sumHeader} $maybe _ <- hasPassings $with Sum pmax <- summary ^. _numGradePasses $maybe Sum pacv <- summary ^. _achievedPasses $if pmax /= 0 #{textPercentInt pacv pmax} #{display pacv} / #{display pmax} $nothing #{display pmax } $maybe _ <- hasPoints $with Sum pmax <- summary ^. _sumGradePoints $maybe Sum pacv <- summary ^. _achievedPoints $if pmax /= 0 #{textPercent $ realToFrac $ pacv / pmax} #{display pacv} / #{display pmax} $nothing #{display pmax } #{display nrSheets}