$newline never $# SPDX-FileCopyrightText: 2022 Gregor Kleen ,Steffen Jost ,Winnie Ros $# $# SPDX-License-Identifier: AGPL-3.0-or-later
$maybe title <- userTitle
_{MsgTitle}
#{title}
_{MsgSurname}
#{userSurname}
_{MsgFirstName}
#{userFirstName}
_{MsgTableMatrikelNr}
$maybe matnr <- userMatrikelnummer #{matnr} $nothing _{MsgNoMatrikelKnown} $maybe sex <- guardOn showSex =<< userSex
_{MsgTableSex}
_{sex}
_{MsgTableEmail}
#{mailtoHtml (pickValidEmail userDisplayEmail userEmail)} $maybe date <- mRegAt
_{MsgRegisteredSince}
#{date} $if mayRegister
^{regButtonWidget} $maybe _ <- mRegistration

_{MsgCourseDeregisterLecturerTip}

_{MsgStudyTerms}
$if null studies _{MsgNoStudyTermsKnown} $else
_{MsgTableStudyTerm} _{MsgTableStudyFeatureDegree} _{MsgTableStudyFeatureType} _{MsgTableStudyFeatureAge} _{MsgTableStudyFeatureValid} _{MsgTableStudyFeatureUpdate} $forall ((Entity _ StudyFeatures{studyFeaturesType, studyFeaturesSemester, studyFeaturesValid, studyFeaturesFirstObserved, studyFeaturesLastObserved}), (Entity _ degree), (Entity _ field)) <- studies
_{field} _{degree} _{studyFeaturesType} #{studyFeaturesSemester} #{hasTickmark studyFeaturesValid} $maybe fObs <- studyFeaturesFirstObserved ^{formatTimeRangeW SelFormatDate fObs $ Just studyFeaturesLastObserved} $nothing ^{formatTimeW SelFormatDate studyFeaturesLastObserved}