$newline never
$# #{summary} $of (_, Just summary) $if not isVisible
#{courseNewsContent} $of (Nothing, Nothing) $if not isVisible
#{courseNewsContent} $if showNewsFiles files
#{iconFileZip}
\ _{MsgCourseNewsFiles}
_{MsgCourseNewsLastEdited lastEditText}
$if mayEditNews || mayDelete
$maybe visFrom <- courseVisibleFrom
^{formatTimeRangeW SelFormatDateTime visFrom courseVisibleTo}
^{formatTimeRangeW SelFormatDateTime regFrom'' (courseRegisterTo course)}
$maybe dereg <- mDereg
_{MsgCourseDeregisterUntil dereg}
$nothing
$maybe regFrom <- courseRegisterFrom course
^{formatTimeRangeW SelFormatDateTime regFrom (courseRegisterTo course)}
$maybe dereg <- mDereg
_{MsgCourseDeregisterUntil dereg}
$maybe aInst <- courseApplicationsInstructions course
#{iconRegisterTemplate} #
$if courseApplicationsRequired course
_{MsgCourseApplicationTemplateApplication}
$else
_{MsgCourseApplicationTemplateRegistration}
$nothing
$maybe templateUrl <- mApplicationTemplate
_{MsgCourseApplicationDeleteToEdit}
$if mayViewAnySheet
_{MsgCourseSheetsFoundHere}: #
_{MsgMenuSheetList}
$else
_{MsgCourseSheetsNoneVisible}
$if mayViewMaterials
$if mayEditNews
$forall lect <- lecturers
$forall assi <- assistants
$forall tutor <- tutors
$forall corrector <- correctors
$if NTop (Just now) < NTop courseVisibleFrom
$if hasAllocationRegistrationOpen
_{MsgCourseInvisibleOverridenByAllocation}
$else
_{MsgCourseInvisible}
$maybe (Allocation{allocationName, allocationRegisterByCourse}, url) <- mAllocation'