$newline never

$# SPDX-FileCopyrightText: 2022 Gregor Kleen <gregor.kleen@ifi.lmu.de>,Steffen Jost <jost@tcs.ifi.lmu.de>,Winnie Ros <winnie.ros@campus.lmu.de>
$#
$# SPDX-License-Identifier: AGPL-3.0-or-later

$# Display Rating, expects
$#  sub :: Submission
$#  submissionRatingDone :: Submission -> Bool
$#  submissionRatingPoints :: Maybe points

$if submissionRatingDone sub
  $maybe (grading, points) <- mTuple (preview _grading sheetType) submissionRatingPoints
    $case grading
      $of Points{..}
        _{MsgRatingAchievedOf points maxPoints}
      $of PassPoints{maxPoints}
        $if fromMaybe False (gradingPassed grading points)
          _{MsgRatingPassed}, _{MsgRatingAchievedOf points maxPoints}
        $else
          _{MsgRatingNotPassed}, _{MsgRatingAchievedOf points maxPoints}
      $of PassBinary
        $if fromMaybe False (gradingPassed grading points)
          _{MsgRatingPassed}
        $else
          _{MsgRatingNotPassed}
      $of PassAlways
        #{hasTickmark True}
  $nothing
    #{hasTickmark True}
