chore: move exam office settings to User

This commit is contained in:
Sarah Vaupel 2021-11-29 21:25:10 +01:00
parent ef358baeab
commit acc0ceaf40
7 changed files with 13 additions and 2 deletions

View File

@ -232,6 +232,7 @@ user-defaults:
download-files: false
warning-days: 1209600
show-sex: false
exam-office-get-synced: true
# During central allocations lecturer-given ratings of applications (as
# ExamGrades) are combined with a central priority.

View File

@ -35,6 +35,7 @@ User json -- Each Uni2work user has a corresponding row in this table; create
csvOptions CsvOptions "default='{}'::jsonb"
sex Sex Maybe
showSex Bool default=false
examOfficeGetSynced Bool default=true -- whether synced status should be displayed for exam results by default
UniqueAuthentication ident -- Column 'ident' can be used as a row-key in this table
UniqueEmail email -- Column 'email' can be used as a row-key in this table
deriving Show Eq Ord Generic -- Haskell-specific settings for runtime-value representing a row in memory
@ -55,7 +56,6 @@ UserSystemFunction
UserExamOffice
user UserId
field StudyTermsId
getSynced Bool default=true -- whether synced status should be displayed for exam results by default
UniqueUserExamOffice user field
deriving Generic
UserSchool -- Managed by users themselves, encodes "schools of interest"

View File

@ -257,6 +257,7 @@ upsertCampusUser upsertMode ldapData = do
, userDownloadFiles = userDefaultDownloadFiles
, userWarningDays = userDefaultWarningDays
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
, userNotificationSettings = def
, userLanguages = Nothing
, userCsvOptions = def

View File

@ -75,6 +75,7 @@ postAdminUserAddR = do
, userDownloadFiles = userDefaultDownloadFiles
, userWarningDays = userDefaultWarningDays
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
, userNotificationSettings = def
, userLanguages = Nothing
, userCsvOptions = def

View File

@ -469,7 +469,6 @@ assimilateUser newUserId oldUserId = mapReaderT execWriterT $ do
return $ UserExamOffice
E.<# E.val newUserId
E.<&> (userExamOffice E.^. UserExamOfficeField)
E.<&> (userExamOffice E.^. UserExamOfficeGetSynced)
)
(\_current _excluded -> [])
deleteWhere [ UserExamOfficeUser ==. oldUserId ]

View File

@ -255,6 +255,7 @@ data UserDefaultConf = UserDefaultConf
, userDefaultDownloadFiles :: Bool
, userDefaultWarningDays :: NominalDiffTime
, userDefaultShowSex :: Bool
, userDefaultExamOfficeGetSynced :: Bool
} deriving (Show)
data PWHashConf = PWHashConf

View File

@ -150,6 +150,7 @@ fillDb = do
, userCsvOptions = def { csvFormat = csvPreset # CsvPresetRFC }
, userSex = Just SexMale
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
fhamann <- insert User
{ userIdent = "felix.hamann@campus.lmu.de"
@ -179,6 +180,7 @@ fillDb = do
, userCsvOptions = def { csvFormat = csvPreset # CsvPresetExcel }
, userSex = Just SexMale
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
jost <- insert User
{ userIdent = "jost@tcs.ifi.lmu.de"
@ -208,6 +210,7 @@ fillDb = do
, userSex = Just SexMale
, userCsvOptions = def
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
maxMuster <- insert User
{ userIdent = "max@campus.lmu.de"
@ -237,6 +240,7 @@ fillDb = do
, userCsvOptions = def
, userSex = Just SexMale
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
tinaTester <- insert $ User
{ userIdent = "tester@campus.lmu.de"
@ -266,6 +270,7 @@ fillDb = do
, userCsvOptions = def
, userSex = Just SexNotApplicable
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
svaupel <- insert User
{ userIdent = "vaupel.sarah@campus.lmu.de"
@ -295,6 +300,7 @@ fillDb = do
, userCsvOptions = def
, userSex = Just SexFemale
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
sbarth <- insert User
{ userIdent = "Stephan.Barth@campus.lmu.de"
@ -324,6 +330,7 @@ fillDb = do
, userCsvOptions = def
, userSex = Just SexMale
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = False
}
let
@ -383,6 +390,7 @@ fillDb = do
, userCsvOptions = def
, userSex = Nothing
, userShowSex = userDefaultShowSex
, userExamOfficeGetSynced = userDefaultExamOfficeGetSynced
}
where
userIdent :: IsString t => t