chore(add-users): audit tutorial participant edit

This commit is contained in:
Sarah Vaupel 2022-12-13 20:16:53 +01:00
parent b1161f27d0
commit a4fc235ed4
2 changed files with 14 additions and 4 deletions

View File

@ -112,6 +112,17 @@ data Transaction
{ transactionTutorial :: TutorialId { transactionTutorial :: TutorialId
} }
| TransactionTutorialParticipantEdit
{ transactionTutorial :: TutorialId
, transactionTutorialParticipant :: TutorialParticipantId
, transactionUser :: UserId
}
| TransactionTutorialParticipantDelete
{ transactionTutorial :: TutorialId
, transactionTutorialParticipant :: TutorialParticipantId
, transactionUser :: UserId
}
| TransactionExternalExamEdit | TransactionExternalExamEdit
{ transactionExternalExam :: ExternalExamId { transactionExternalExam :: ExternalExamId
} }

View File

@ -287,10 +287,9 @@ upsertNewTutorial cid tutorialName = do
registerTutorialMembers :: TutorialId -> Set UserId -> Handler () registerTutorialMembers :: TutorialId -> Set UserId -> Handler ()
registerTutorialMembers tutId (Set.toList -> users) = runDB $ do registerTutorialMembers tutId (Set.toList -> users) = runDB $ do
prevParticipants <- fmap Set.fromList $ selectList [TutorialParticipantUser <-. users, TutorialParticipantTutorial ==. tutId] [] prevParticipants <- fmap Set.fromList $ selectList [TutorialParticipantUser <-. users, TutorialParticipantTutorial ==. tutId] []
participants <- fmap Set.fromList . for users $ \tutorialParticipantUser -> upsert participants <- fmap Set.fromList . for users $ \tutorialParticipantUser -> do
TutorialParticipant { tutorialParticipantTutorial = tutId, .. } tutPartId <- upsert TutorialParticipant { tutorialParticipantTutorial = tutId, .. } []
[] audit $ TransactionTutorialParticipantEdit tutId tutPartId tutorialParticipantUser
-- TODO: audit
let newParticipants = participants Set.\\ prevParticipants let newParticipants = participants Set.\\ prevParticipants
unless (Set.null newParticipants) $ unless (Set.null newParticipants) $
addMessageI Success . MsgCourseParticipantsRegisteredTutorial $ Set.size newParticipants addMessageI Success . MsgCourseParticipantsRegisteredTutorial $ Set.size newParticipants